当前位置:   article > 正文

【MySQL】Docker运行以及用户操作_docker 指定用户运行mysq

docker 指定用户运行mysq

一、Docker运行mysql

  1. dockerhub上搜索dockers支持的MySQL版本,以MySQL5.7为例。在cmd中输入docker pull mysql:5.7则可以下载MySQL5.7版本镜像。
	docker pull mysql:5.7
  • 1
bash语句中不加版本号或者使用lasted则下载最新的MySQL镜像。
  • 1
  1. 使用以下语句运行MySQL。
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7 --lower_case_table_names=1
  • 1
-p port1:port2 是本机端口映射到docker中的端口,port1是对外暴漏的端口,port2是docker内部端口
--name是MySQL实例设置的别名
-e MYSQL_ROOT_PASSWORD 设置MySQL的root用户密码
-d 以守护进程运行(后台运行)
mysql:5.7 是镜像名字,不加版本号会下载最新版本并运行
--lower_case_table_names 表存储的文件系统区分大小写,Unix/Linux默认为0 Windows默认为1 MacOS默认为2
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  1. 启动完成后在dockers容器中可看到MySQL的状态为运行状态,使用Navicat或其他工具可正常连接

二、MySQL用户创建及授权

1.创建用户

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
  • 1
username:新创建的用户名
host:指定该用户可以在哪些主机上登录,"%"即所有主机
password:新建用户的登录密码,密码可以为空(该用户不需要密码即可登录)
  • 1
  • 2
  • 3

eg.

	CREATE USER 'peter'@'localhost' IDENTIFIED BY '123456';
	CREATE USER 'tom'@'192.168.1.15' IDENETIFIED BY '123456';
	CREATE USER 'jimmy'@'%' IDENTIFIED BY '';
	CREATE USER 'jhon'@'%';
  • 1
  • 2
  • 3
  • 4
  1. 权限授权
	GRANT privileges ON db_name.tb_name TO 'username'@'host' ;
  • 1
PRIVILEGES:SELECT,INSERT,DELETE,UPDATE等操作,全部权限使用all/all privileges
db_name.tb_name:授权指定的数据库及数据表,全部数据表使用db_name.*
  • 1
  • 2

eg.

	GRANT SELECT,INSERT ON db_test.tb_test TO 'jhon'@'%'; 
	GRANT ALL ON db_test.* TO 'jimmy'@'%';
  • 1
  • 2

完成授权后需要刷新权限表FLUSH PRIVILEGES;

该授权用户不能授权给其他用户,如需要授权给其他用户可以使用语句
GRANT privileges ON db_name.tb_name TO 'username'@'host' WITH GRANT OPTION;

  1. 取消授权
	REVOKE privileges ON db_name.tb_name FROM 'username'@'host';
  • 1
撤销授权时privileges、db_name、tb_name同授权部分相同,也需要刷新权限表
  • 1
  1. 修改密码
	SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
  • 1

修改当前登录用户密码SET PASSWORD = PASSWORD("newpassword");
5. 删除用户

	DROP USER 'username'@'host'; 
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/478321
推荐阅读
相关标签
  

闽ICP备14008679号