docker.io mysql_Docker配置mysql

首先需要从docker上拉取mysql镜像

一:拉取命令操作

[root@localhost my.Shells]# docker pull mysql

Using default tag: latest

Trying to pull repository docker.io/library/mysql ...

latest: Pulling from docker.io/library/mysql

f49cf87b52c1: Pull complete

78032de49d65: Pull complete

837546b20bc4: Pull complete

9b8316af6cc6: Pull complete

1056cf29b9f1: Pull complete

86f3913b029a: Pull complete

f98eea8321ca: Pull complete

3a8e3ebdeaf5: Pull complete

4be06ac1c51e: Pull complete

920c7ffb7747: Pull complete

Digest: sha256:7cdb08f30a54d109ddded59525937592cb6852ff635a546626a8960d9ec34c30

二:查看docker的镜像

[root@localhost my.Shells]# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

docker.io/mysql latest f008d8ff927d 9 days ago 408.5 MB

三:运行docker的mysql命令

[root@localhost my.Shells]# docker run --name docker-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=wzy123 -d mysql //用户默认是root,密码默认是root的密码

283a1fa17fef310d9e329e11f10b8179e5be5fd88310be64fb0b4fa75ab5d80f

四:查看mysql容器是否启动

[root@localhost my.Shells]# docker ps //mysql容器已经启动了

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

283a1fa17fef mysql "docker-entrypoint.sh" 7 seconds ago Up 6 seconds 0.0.0.0:3306->3306/tcp docker-mysql

五:docker使用命令行登录mysql

[root@localhost my.Shells]# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

283a1fa17fef mysql "docker-entrypoint.sh" 18 hours ago Up 3 seconds 0.0.0.0:3306->3306/tcp docker-mysql

[root@localhost my.Shells]# docker exec -it docker-mysql bash docker-mysql(镜像容器的名称)

root@283a1fa17fef:/# ls

bin boot dev docker-entrypoint-initdb.d entrypoint.sh etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var

root@283a1fa17fef:/# mysql -u root -p

Enter password: //wzy123

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 4

Server version: 5.7.21 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

注意:当使用docker rm [id]后,mysql数据库的所有数据会全部清除,再重新开启一个镜像是一个崭新的数据库。

如果发现navicat远程连接mysql出现

1.首先在容器中登录查看mysql版本

mysql> status;

--------------

mysql Ver 8.0.11 for Linux on x86_64 (MySQL Community Server - GPL)

2.进行授权远程连接(注意mysql8.0跟之前的授权方式不同)

授权

GRANT ALL ON *.* TO 'root'@'%';

刷新权限

flush privileges;

此时,还不能远程访问,因为Navicat只支持旧版本的加密,需要更改mysql的加密规则

3.更改加密规则

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

4.更新root用户密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

刷新权限

flush privileges;

OK,设置完成,再次使用 Navicat 连接数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值