栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Docker安装MySQL

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Docker安装MySQL

Docker安装MySQL
  • Docker安装
    • 1、删除Ubuntu中原来的Docker
      • 1.1 全部删除
      • 1.2 快速删除
    • 2、安装Docker
      • 2.1 更新、安装依赖
      • 2.2 添加Docker的官方GPG密匙
      • 2.3 设置一个稳定的仓库
      • 2.4 再次更新apt
      • 2.5 安装Docker
      • 2.6 测试是否安装成功
  • MySQL安装
    • 1、拉取最新的MYSQL镜像
    • 2、镜像查看与删除
    • 3、创建MySQL容器
      • 3.1 挂载本地目录
      • 3.2 挂载备份目录
      • 3.3 MySQL设置远程访问
  • 补充:局域网下Ubuntu间传输文件
    • 1、主从机信息
    • 2、传输文件

Docker安装 1、删除Ubuntu中原来的Docker 1.1 全部删除
1.常归删除操作
sudo apt-get autoremove docker docker-ce docker-engine docker.io containerd runc
 
2. 删除docker其他没有没有卸载
dpkg -l | grep docker
dpkg -l |grep ^rc|awk ‘{print $2}’ |sudo xargs dpkg -P # 删除无用的相关的配置文件
 
3.卸载没有删除的docker相关插件(结合自己电脑的实际情况)
sudo apt-get autoremove docker-ce-*
 
4.删除docker的相关配置&目录
sudo rm -rf /etc/systemd/system/docker.service.d
sudo rm -rf /var/lib/docker
 
5.确定docker卸载完毕
docker --version
1.2 快速删除
sudo apt-get purge docker-ce docker-ce-cli containerd.io
 
sudo rm -rf /var/lib/docker
2、安装Docker 2.1 更新、安装依赖
先更新一下
sudo apt-get update
 
安装相应的依赖
sudo apt-get install 
    apt-transport-https 
    ca-certificates 
    curl 
    gnupg-agent 
    software-properties-common
2.2 添加Docker的官方GPG密匙
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
2.3 设置一个稳定的仓库
sudo add-apt-repository 
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu 
   $(lsb_release -cs) 
   stable"
2.4 再次更新apt
sudo apt-get update
2.5 安装Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io
2.6 测试是否安装成功
sudo docker run hello-world

#查看所有容器
docker ps -a
#删掉刚才那个容器
docker rm 2a522

MySQL安装 1、拉取最新的MYSQL镜像
docker pull mysql:5.7
2、镜像查看与删除
#查看镜像
docker images
#删除镜像
docker rmi hello-world

3、创建MySQL容器 3.1 挂载本地目录
  • 创建本地MySQL映射目录
mkdir -p /root/mysql/data /root/mysql/logs /root/mysql/conf
  • 在/root/mysql/conf中创建 *.cnf 文件
cd /root/mysql/conf
touch my.cnf
  • 创建容器,将数据,日志,配置文件映射到本机
docker run -p 3306:3306 --name mysql -v /root/mysql/conf:/etc/mysql/conf.d -v /root/mysql/logs:/logs -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql
3.2 挂载备份目录
docker run -p 3306:3306 --name mysql01 
-v /root/mysql_data/conf:/etc/mysql/conf.d 
-v /root/mysql_data/data:/var/lib/mysql 
-v /root/mysql_data/logs:/logs 
-e MYSQL_ROOT_PASSWORD=123456 
-d mysql:5.7
3.3 MySQL设置远程访问
  • 进入容器

    docker exec -it mysql01 /bin/bash
    
  • 进入MySQL

    mysql -uroot -p123456
    
  • 若报错

    若报错Access denied for user 'root'@'localhost' (using password: YES)
    则进行以下步骤:
    在my.cnf文件的[mysqld]这个条目下加入skip-grant-tables保存退出后重启mysql。这句话的意思是跳过验证阶段,在数据库容器中输入mysql -u root -p后,在输入密码的时候可以直接敲回车进入数据库操作界面。
    在终端输入doker exec -it mysql /bin/bash进入到mysql容器的交互命令端。
    在mysql容器交互命令端输入mysql -u root -p后,在输入密码的时候直接敲回车,进入数据库命令交互端。
    进入数据库命令交互端后,依次进行以下操作。
    第一步,选择名为mysql的数据库
    mysql> use mysql;
    
    第二步,为root用户设置密码
    mysql> update user set password=password("新密码") where user="root";   #mysql5.7版之前
    mysql> update mysql.user set authentication_string=password('新密码') where user='root';  #mysql5.7版及之后
    
    第三步,刷新数据库
    mysql> flush privileges;
    
    第四步,退出数据库
    mysql> quit;
    将my.cnf文件的[mysqld]这个条目下的skip-grant-tables删除,保存退出后重启mysql
    再用数据库连接工具进行测试,发现可以成功连接
    
  • 若未报错

    #设置mysql远程权限
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
    #刷新权限
    flush privileges;
    
  • 测试远程访问

补充:局域网下Ubuntu间传输文件 1、主从机信息

本机:

​ name:zzk

​ ip:192.168.1.110

从机:

​ name:slave8

​ ip:192.168.1.10

(ip可以通过ipconfig命令查看)

eg:主机拷贝从机的一个文件夹

2、传输文件
scp -r root@192.168.1.10:/usr/local/zyh/data/mysql_data_back /root/

scp:拷贝文件命令

-r:表示拷贝的是整个文件夹,如果只拷贝一个文件,则不用-r

root@@192.168.1.10 从机用户名@从机ip 务必先查看文件的权限

/usr/local/zyh/data 要拷贝的文件夹在从机中的路径

/usr/local/zzk 下载到本机的本地的路径

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/511491.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号