Docker容器MySQL创建用户并授予权限
- 进入Docke容器
docker exec -it mysql /bin/bash
- 登陆数据库
mysql -uroot -p密码
- 创建用户和数据库
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
主机名:哪个主机上可以登陆,使用通配符'%' 所有情况都能访问, 'localhost' 本地用户访问, '1.2.3.6' 指定 ip 才能访问
- 刷新权限
flush privileges;
- 创建wordpress数据库
CREATE DATABASE [IF NOT EXISTS] <数据库名>
[[DEFAULT] CHARACTER SET <字符集名>]
[[DEFAULT] COLLATE <校对规则名>];
CREATE DATABASE IF NOT EXISTS `wordpress` default character set utf8mb4 collate utf8mb4_unicode_ci;
- 授予权限用户wordpress操作wordpress数据库权限
GRANT privileges ON databasename.tablename TO 'username'@'host'
databasename:数据库名
tablename:表名,授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'%';
- 刷新权限
flush privileges;
示例
- root用户密码123456登录
mysql -uroot -p123456
- 创建chevereto数据库,字符集utf8mb4
CREATE DATABASE IF NOT EXISTS chevereto CHARACTER SET utf8mb4 collate utf8mb4_unicode_ci;
- 查看所有数据库
show databases;
- 显示所有用户
select user from mysql.user;
- 创建chevereto用户,密码123456
CREATE USER 'chevereto'@'%' IDENTIFIED BY '123456';
- 授权chevereto用户chevereto数据库权限
GRANT ALL PRIVILEGES ON *.* TO 'chevereto'@'%' IDENTIFIED BY '123456';
- 刷新权限
flush privileges;
- 查看用户授予的权限
show grants for test;