服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - 服务器知识 - Docker安装并使用Mysql的详细教程(实测可用!)

Docker安装并使用Mysql的详细教程(实测可用!)

2023-04-07 17:10REMLILI 服务器知识

在日常的工作中经常会需要将数据存在服务器,经常用到的数据库是mysql,下面这篇文章主要给大家介绍了关于Docker安装并使用Mysql的详细教程,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

一个容器=完整Linux

一、Docker安装Mysql

1、启动Docker

?
1
2
3
4
启动:sudo systemctl start docker
        service docker start
停止:systemctl stop docker
重启:systemctl restart docker

2、查询mysql

?
1
docker search mysql

3、安装mysql

1.默认拉取最新版本mysql

?
1
docker pull mysql

2.拉取指定版本mysql_5.7

?
1
sudo docker pull mysql:5.7

4、查看镜像

?
1
docker images

5、本地创建挂载目录-v

二、Docker启动\使用Mysql

1、启动mysql容器(创建镜像实例)

1.指定版本

?
1
2
3
4
5
6
sudo docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

2.最新版本

?
1
2
3
4
5
6
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:latest

3.命令含义:容器=完整Linux

?
1
2
3
4
5
6
7
8
9
docker run:在docker中启动一个容器实例
-d:该容器在后台运行
-p 3306:3306:容器与主机映射端口为,主机3306,容器3306
--name mysql:容器运行后的名称
-v /mysqldata/mysql/log:/var/log/mysql:将容器/var/log/mysql目录下的数据,备份到主机的 /mysqldata/mysql/log目录下
-v /mysqldata/mysql/data:/var/lib/mysql:将容器/var/lib/mysql目录下的数据,备份到主机的 /mysqldata/mysql/data目录下
-v /mysqldata/mysql/conf:/etc/mysql:将容器/etc/mysql目录下的数据,备份到主机的 mysqldata/mysql/conf目录下
-e MYSQL_ROOT_PASSWORD=root:设置当前mysql实例的密码为root
mysql:5.7:需要运行的容器名称以及版本号

2、在var/lib/docker/containers/下查看容器

?
1
cd /var/lib/docker/containers/

3、查看mysql进程获取name——mysql名称

?
1
docker ps -a

4、进入mysql容器—并登陆mysql

?
1
2
3
4
5
6
7
格式:docker exec -it   mysql名称   bash
 
进入mysql容器操作台命令:docker exec -it mysql bash
 
登录mysql命令:mysql -u root -p
 
        输入密码:

5、开启远程访问权限

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
命令:use mysql;
 
命令:select host,user from user;
 
命令:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
 
命令:flush privileges;
 
把root用户的密码改成 mysql_native_password 模式,即可远程连接
 
 
        #创建一个账号-admin,用来进行远程访问;
        CREATE USER 'admin'@'%' IDENTIFIED BY '123456';
         
         
         赋予所有权限给之前创建的账号:admin
        GRANT ALL ON *.* TO 'admin'@'%';
         
         
         确认使用密码{123456}登录此账号{admin}
         密码尽量复杂,安全性更高。
        ALTER USER 'admin'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
 
         刷新权限
        FLUSH PRIVILEGES;

6、查看docker日志

?
1
命令:docker logs -f --tail 10 a4dac74d48f7

7、常用命令

查看进程

?
1
命令:docker ps -a

关闭docker中mysql容器

?
1
命令:docker stop mysqlserver

8、 重启docker中mysql重启

重启docker

?
1
命令:systemctl restart docker

关闭docker

?
1
命令:systemctl stop docker

自动重启容器

sudo docker update mysql --restart=always

9、移除原来的container ID(就是长长的那串数字)

?
1
docker rm + container ID

10、退出容器

三、Mysql设置

1、进入容器:

?
1
2
3
命令: docker exec -it mysql bash
 
命令:mysql -u root -p

2、定位容器位置:

?
1
2
命令:whereis mysql
显示:mysql: /usr/bin/mysql /usr/lib/mysql /etc/mysql /usr/share/mysql

3、退出容器:

?
1
exit

4、找到配置文件夹:一级一级的进入

?
1
2
3
命令:cd /mydata/
命令:cd mysql/
命令:cd conf/

5、创建配置文件:cnf

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
命令:vi my. cnf
命令:i
 
粘贴内容:
    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
    [mysqld]
    init_connect=' SET collation_connection = utf8_unicode_ci '
    init_connect=' SET NAMES utf8 '
    character-set-server=utf8
    collation-server=utf8_unicode_ci
    skip-character-set-client-handshake
    skip-name-resolve
    
按键:ESC
命令::wq

6、重启容器

?
1
2
命令:docker restart mysql
命令:docker exec -it mysql /bin/bash

7、进入文件夹

?
1
2
3
目录:cd /etc/mysql/
展示:ls
查看文件:cat my. cnf

四、Mysql外部连接

    IP:虚拟机IP地址——云主机地址
    端口:
    名称:
    密码:

总结

到此这篇关于Docker安装并使用Mysql的文章就介绍到这了,更多相关Docker安装使用Mysql内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/qq_25482375/article/details/126250746

延伸 · 阅读

精彩推荐