MYSQL日常使用整理

时间:2022-12-20 21:45:56

1、查看数据库

SHOW DATABASES;

默认数据库:

mysql - 用户权限相关数据
test - 用于用户测试数据
information_schema - MySQL本身架构相关数据

2、创建数据库

utf-8 编码

CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

gbk 编码

CREATE DATABASE 数据库名称 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;

3、使用、切换数据库

USE db_name;

可以不使用分号

4、用户管理

创建用户

create user ‘用户名’@’IP地址’ identified by ‘密码’;

删除用户

drop user ‘用户名’@’IP地址’;

修改用户

rename user ‘用户名’@’IP地址’; to ‘新用户名’@’IP地址’;

修改密码

set password for ‘用户名’@’IP地址’ = Password(‘新密码’)

PS:用户权限相关数据保存在mysql数据库的user表中,所以也可以直接对其进行操作(不建议)

查看当前用户

select user();

查看所有用户

select host,user from mysql.user;

人性化显示所有用户

SELECT DISTINCT CONCAT(‘User: ”’,user,”’@”’,host,”’;’) AS query
FROM mysql.user;

查看用户的所有权限

show grants for ‘nick’@’%’;

5、授权管理

查看权限

show grants for ‘用户’@’IP地址’

授权

grant 权限 on 数据库.表 to ‘用户’@’IP地址’

取消权限

revoke 权限 on 数据库.表 from ‘用户’@’IP地址’

常用权限:

all privileges 除grant外的所有权限
select 仅查权限
select,insert 查和插入权限
usage 无访问权限

6、授权局域网内主机远程连接数据库

百分号匹配法

grant all on . to ‘test’@’192.168.200.%’ identified by ‘test123’;

子网掩码配置法

grant all on . to ‘test’@’192.168.200.0/255.255.255.0’ identified
by ‘test123’;

刷新权限

flush privileges;

远程登陆连接

mysql -utest -ptest123 -h 192.168.200.96

7.查看正在执行的SQL

SHOW VARIABLES LIKE "general_log%";
+------------------+------------------------------+

| Variable_name | Value |
+------------------+------------------------------+

| general_log | OFF |
| general_
log_file | /u01/mysql/|
+------------------+------------------------------+
2 rows in set (0.00 sec)

打开SQL执行日志,

SET GLOBAL general_log = ‘ON’;

7.查看mysql innodb的系统运行信息
(1)mysql 5版本
SHOW ENGINE INNODB STATUS\G
(2)mysql 4版本
show innodb status\G