工作中需要使用到ETL工具kettle进行数据的清洗、迁移、抽取工作,一台电脑上安装两个mysql数据苦显得有点资源打紧,毕竟本机不是长时间用mysql,就选择了在云服务器上搭建mysql 环境,本次云服务器采用的使用阿贝云免费云服务器作为环境操作。操作系统centos7.9。
centos7.9
mysql5.7
docker的安装本文不再讲解,如果需要安装docker参考之前的文章《云服务器搭建docker环境》
本文以mysql5.7为,打开dockerhub官网
弹出的mysql页面上点击Tags标签,
下滑页面,找到需要下载的版本,本次以5.7.35为例,点击右侧的方框按钮。
在需要下载的服务器上复制如下信息
#docker pull mysql:5.7.35
查看镜像是否拉取成功
#docker images
创建mysql-hj
docker run -p 3306:3306 --name mysql-hj \ -v /usr/local/docker/mysql/conf:/etc/mysql \ -v /usr/local/docker/mysql/logs:/var/log/mysql \ -v /usr/local/docker/mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=123456 \ -d mysql:5.7.35
创建mysql-mb
docker run -p 3307:3306 --name mysql-mb \ -v /data/docker/mysql/conf:/etc/mysql \ -v /data/docker/mysql/logs:/var/log/mysql \ -v /data/docker/mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=123456 \ -e TZ=Asia/Shanghai \ -d mysql:5.7.35
查看容器是否正常运行
#docker ps
可以看到容器ID,时间、端口、容器名称
使用远程工具链接之前需要确保防火墙上已经开启3306和3307两个端口
查看端口
#firewalld-cmd --list-port
新增端口
#firewall-cmd --zone=public --add-port=3307/tcp -permanent #firewall-cmd --zone=public --add-port=3306/tcp -permanent #firewall-cmd --reload
设置远程访问权限
#docker exec it mysql-hj /bin/bash #mysql -uroot -p mysql> grant all privileges on *.* to root@'%' identified by "password"; mysql> flush privileges;
验证链接
接下来使用mysql数据库工具进行连接验证。
以上为docker环境中mysql的安装设置。