Centos8 Docker安装mysql & 远程访问

kiaoio4 · · 2833 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

## Docker 安装Mysql 查找镜像 ```bash #docker search mysql NAME DESCRIPTION STARS OFFICIAL AUTOMATED mysql MySQL is a widely used, open-source relation… 10743 [OK] mariadb MariaDB Server is a high performing open sou… 4046 [OK] mysql/mysql-server Optimized MySQL Server Docker images. Create… 790 [OK] percona Percona Server is a fork of the MySQL relati… 532 [OK] centos/mysql-57-centos7 MySQL 5.7 SQL database server 87 mysql/mysql-cluster Experimental MySQL Cluster Docker images. Cr… 81 centurylink/mysql Image containing mysql. Optimized to be link… 59 [OK] bitnami/mysql Bitnami MySQL Docker Image 50 [OK] databack/mysql-backup Back up mysql databases to... anywhere! 42 deitch/mysql-backup REPLACED! Please use http://hub.docker.com/r… 41 [OK] prom/mysqld-exporter 37 [OK] tutum/mysql Base docker image to run a MySQL database se… 35 schickling/mysql-backup-s3 Backup MySQL to S3 (supports periodic backup… 29 [OK] linuxserver/mysql A Mysql container, brought to you by LinuxSe… 27 centos/mysql-56-centos7 MySQL 5.6 SQL database server 20 circleci/mysql MySQL is a widely used, open-source relation… 20 mysql/mysql-router MySQL Router provides transparent routing be… 19 arey/mysql-client Run a MySQL client from a docker container 17 [OK] fradelg/mysql-cron-backup MySQL/MariaDB database backup using cron tas… 12 [OK] yloeffler/mysql-backup This image runs mysqldump to backup data usi… 7 [OK] openshift/mysql-55-centos7 DEPRECATED: A Centos7 based MySQL v5.5 image… 6 devilbox/mysql Retagged MySQL, MariaDB and PerconaDB offici… 3 ansibleplaybookbundle/mysql-apb An APB which deploys RHSCL MySQL 2 [OK] jelastic/mysql An image of the MySQL database server mainta… 1 widdpim/mysql-client Dockerized MySQL Client (5.7) including Curl… 1 [OK] ``` 拉取Mysql5.7版本镜像 ```bash docker pull mysql:5.7 ``` ## 运行Mysql容器 ```bash docker run -d -p 3306:3306 --privileged=true -v /docker/mysql/conf/my.cnf:/etc/my.cnf -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci ``` 参数说明 ```bash run # 运行一个容器 -d # 后台运行 -p # 容器内部端口和服务器端口映射关联 --privileged=true # 设值MySQL 的root用户权限, 否则外部不能使用root用户登陆 -v /docker/mysql/conf/my.cnf:/etc/my.cnf # 将服务器中的my.cnf配置映射到docker中的/docker/mysql/conf/my.cnf配置 -v /docker/mysql/data:/var/lib/mysql # 映射数据库的数据目录, 避免以后docker删除重新运行MySQL容器时数据丢失 -e MYSQL_ROOT_PASSWORD=123456 # 设置MySQL数据库root用户的密码 --name mysql # 设值容器名称为mysql mysql:5.7 # 从docker镜像mysql:5.7中启动一个容器 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci # 设值数据库默认编码 ``` 进入容器 ```bash docker exec -it mysql /bin/bash ``` 连接Mysql ```bash mysql -uroot -p #密码 123456 ``` 创建用户 ```bash GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY 'test123' WITH GRANT OPTION; #用户名: test , 密码: test123 ``` 查看容器ID ```bash #docker inspect --format='{{.NetworkSettings.IPAddress}}' mysql 172.17.0.4 ``` 允许任意IP连接 ```bash select host,user,plugin,authentication_string from mysql.user; +-----------+---------------+-----------------------+-------------------------------------------+ | host | user | plugin | authentication_string | +-----------+---------------+-----------------------+-------------------------------------------+ | localhost | root | mysql_native_password | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | localhost | mysql.session | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | | localhost | mysql.sys | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | | % | root | mysql_native_password | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | +-----------+---------------+-----------------------+-------------------------------------------+ ``` ```bash #use mysql; && 设置新的密码 #ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; Query OK, 0 rows affected (0.00 sec) flush privileges; flush privileges; ```

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2833 次点击  ∙  2 赞  
加入收藏 微博
1 回复  |  直到 2021-06-14 15:24:59
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传