# sql中的常见操作 ## sql常用语句 ```mysql show databases; #查询所有数据库 create database 数据名 charset=字符集; #创建数据库 use 数据库名; #选择数据库 show tables; #查询所有表 create table 表名( #创建表 列名 数据类型, 列名 数据类型 ); insert into 表名(列名,列名) value(值,值); #添加数据 select * from 表名; #查询数据 update 表名 set 列 = 值 where 条件; #修改数据 delete from 表名 where 条件; #删除数据 drop table 表名; #删除表 drop database 数据库名; #删除数据库 select count(*) from mysql.user; # 查询mysql库下user表有多少行 select * from mysql.db; # 查询mysql库db表的所有字段 select db from mysql.db; # 查询db字段的内容 select db,user from mysql.db; # 查询多个字段内容 select * from mysql.db where host like '192.168.%'; # 查询字段中指定内容,where=条件 ``` ## mysql创建用户和授权 ```mysql #创建用户 create user 'username'@'host' identified by 'password'; ``` ```mysql #授权 grant all on *.* to 'user1' ; GRANT privileges ON databasename.tablename TO 'username'@'host'; ``` ```mysql # 刷新权限 FLUSH PRIVILEGES; ``` ```mysql #查看权限 show grants; # 查看当前用户 show grants for username@host; #查看指定用户 ``` > - `host`: 指定允许使用这个账号登陆的IP地址,%表示所有IP地址。192.168.1.%表示192.168.1网段的所有IP地址。 > - `privileges`: 权限,如SELECT, INSERT, UPDATE等,如果要授予所有权限则使用ALL。 > - `databasename.tablename`: 数据库名和表名,分别用*号表示所有。 ## mysql常用指令 ```mysql desc tb_name; #查看表里的字段 show create table tb_name\G #查看建表语句 select user(); #查看当前用户 select database(); #查看当前使用的数据库 select version(); #查看当前数据库版本 show status; #查看数据库状态 show variables; show variables like 'max_connect%'; #查看各参数 set global max_connect_errors=1000; #修改参数 show processlist; show full processlist; #查看队列 ```