基本操作
进入mysql数据库,然后根据提示输入密码:
mysql -u root -p
查询所有的数据库:
show databases ;
进入数据库:
use db_test
查询库中所有表:
show tables ;
查看表结构:
desc tb_test ;
(查)select 语句:
select * from tb_test;
select * from tb_test where name="";
###这里使用了where子句,后面还可加order by子句进行排序,limit子句确定要检索哪些行。
创建database,并指定数据库字符集:
create database db_test default character set utf8 collate utf8_general_ci ;
创建table,并增加、修改表的字段,
create table tb_user(
id int(10) not null auto_increment primary key,
name varchar(20) not null
); ###注意最后一列不要加“,”
alter table tb_user
add age int(3) default '0'; ###删除用drop
(增、删)向表格中插入新的行:
insert into 数据表名(列名1,列名2,列名3)value(值1,值2,值3);
### VALUES中CHAR,VARCHAR,TEXT,DATE,TIME,ENUM等类型的数据需要单引号修饰。
### 相对应的delete为删除表格中的行:delete from 表名 where xx = yy ;
(改)update 表格中数据:
update 表名称 set 要修改的字段 = '' where id = '';
### 注意如果不用where子句进行检索,则会修改该列所有的值。
查看数据库用户和时间:
select user();
select now() ;
查看用户权限:
show grants ;
show grants for root;
技战法
1.设置数据库时区(需退出重新登录):
set global time_zone = '+8:00';
flush privileges;
2.从mysql中导出数据到指定目录:
show variables like "%secure%" ;
select * from tb_test into outfile "/var/lib/mysql-files/t1.abc";
### information_schema中的columns表,记录所有表的字段信息。根据table_name检索column_comment。
select column_name from information_schema.columns where table_name =" ";
3.使用LIKE操作符与SQL通配符:
SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern ;
### 这里的 pattern,比如以.txt什么结尾写成"%.txt";包含字母a或b写成'[ab]'。
通配符 | 描述 |
---|---|
% | 替代一个或多个字符 |
_ | 仅替代一个字符 |
[charlist] | 字符列中的任何单一字符 |
[!charlist] | 不在字符列中的任何单一字符 |
4.备份数据库:
mysqldump -u root -p --all-databasse > mysql_bak_0607.sql
mysqldump -u root -p --databases db_test> mysql_bak.sql
mysql -u root -p < mysql_bak_0607.sql
使用 –all-databases 和–databases 参数备份的数据库在导入时无须制定用户名,建议如此操作。
也可使用数据库工具Navicat,选中数据库后点 backup–> New Backup–> start–> save。
5.字符集相关:
查看MySQL数据库服务器和数据库字符集 show variables like '%char%';
查看表的字符集 show table status from mysql_db like '%tb_name%'
查看表中所有列的字符集 show full columns from tb_name;
查看mysql所支持的字符集 show charset;