Docker 安裝 MySQL


 1、 docker search mysql

2、docker pull mysql/mysql-serer

3、mkdir -p ~/mysql/data ~/mysql/logs ~/mysql/conf

data目錄將映射為mysql容器配置的數據文件存放路徑

logs目錄將映射為mysql容器的日志目錄

conf目錄里的配置文件將映射為mysql容器的配置文件

4、docker run -d -p 13306:3306

  --name mysql

  --restart=always

  --privileged=true

  -v /var/docker/mysql/data:/var/lib/mysql -v /var/docker/mysql/conf.d:/etc/mysql/conf.d -v /var/docker/mysql/logs:/var/log/mysql

  -e MYSQL_USER = "aaaa"

  -e MYSQL_PASSWORD="xxxxxx"

   -e MYSQL_ROOT_PASSWORD=password 

   mysql

  --character-set-server=utf8 --collation-server=utf8_general_ci

 

  • -p 123456:3306:將容器的3306端口映射到主機的12356端口

  • -v /var/docker/mysql/conf.d:/etc/mysql/conf.d:將主機當前目錄下的conf/my.cnf掛載到容器的/etc/mysql/my.cnf

  • -v /var/docker/mysql/logs:/var/log/mysql:將主機當前目錄下的logs目錄掛載到容器的/logs

  • -v /var/docker/mysql/datadir:/var/lib/mysql :將主機當前目錄下的datadir目錄掛載到容器的//var/lib/mysql

  • -e MYSQL_ROOT_PASSWORD=123456:初始化root用戶的密碼

  • 在docker run中加入 --privileged=true  給容器加上特定權限 。否則會chown: changing ownership of ‘/var/lib/mysql/....‘: Permission denied (http://www.cnblogs.com/performancetest/p/5719420.html

  • -d: 后台運行容器,並返回容器ID

     

     

     

#進入mysql的終端, 如果提示客戶端連接caching-sha2-password問題, 按如下修改
 
5、docker exec -it container-name mysql -uroot -p123456

  1. use mysql;  #使用mysql庫
  2. ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;     #修改加密規則  
  3. ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
  1. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'NewPassword';
  2. ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'NewPassword';
  1.   #更新密碼(mysql_native_password模式)  
  2. update user set host='%' where user = 'root';  #設置root在任意ip可以使用(支持遠程連接)  
  3. FLUSH PRIVILEGES;   #刷新權限   
  4. quit; #退出控制台 


CREATE USER 'name'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
GRANT ALL PRIVILEGES ON * . * TO 'name'@'localhost';

6、 docker exec -it container-id bash //進入container 內命令行模式


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM