第一步:下拉mysql
redis pull mysql
我下拉的是目前最新版本,也就是8.3.0版本
docker ps
查看容器运行情况
第二步:挂载目录
mkdir -p /path/mysql/log /path/mysql/data /path/mysql/conf
第三步:新建并修改配置文件
在 /path/mysql/conf/
下新建 my.cnf
文件,即/path/mysql/conf/my.cnf
我的配置文件如下,大家可以直接复制进my.cnf
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
这个配置文件是解决编码问题,默认mysql的编码为latin1,要将他改为utf-8编码
第四步:配置防火墙对外开放端口
开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙
systemctl restart firewalld
重启docker
systemctl restart docker
第五步:启动mysql
docker run -d -p 3306:3306 --privileged=true -v /path/mysql/log:/var/log/mysql -v /path/mysql/data:/var/lib/mysql -v /path/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=password --name mysql mysql
注意,重点:如果是服务器数据库,密码一定要更换成复杂密码,不然可能会被黑掉数据
本人由于疏忽,第一次设置服务器数据库密码为123456,结果第二天就被黑客黑掉了,对方仅在我的数据库留了一条"转账则恢复数据,否则公布且删除数据"的信息。庆幸的是,由于那个数据库是新库,里面没什么数据,只有若依框架的配置文件,所以黑了也就被黑了,也没有去找回。
常见错误
明明自己密码正确,但是mysql却报密码错误
如果更换了mysql密码,就一定要删除容器卷里的数据,否则旧数据会影响到新容器对新密码的校验(新密码无法通过,旧密码能通过),可能是因为容器卷里的旧数据存了旧密码
重大错误
数据库被黑
注意,重点:如果是服务器数据库,密码一定要更换成复杂密码,不然可能会被黑掉数据
本人由于疏忽,第一次设置服务器数据库密码为123456,结果第二天就被黑客黑掉了,对方仅在我的数据库留了一条"向xxx账户转账0.017比特币则恢复数据,否则公布且删除数据"的信息。庆幸的是,由于那个数据库是新库,里面没什么数据,只有若依框架的配置文件,所以黑了也就被黑了,也没有去找回。
由于这个问题太重要且严重,所以再次重申一遍
CentOS7部署ruoyi-Cloud版系列
我正在做一个在虚拟机的Linux系统部署项目的系列,本系列不讲与若依框架有关的知识,只讲虚拟机环境的配置
前置知识:
- 从git下拉若依框架Cloud版,并修改好配置文件
- 下载Vmware并安装虚拟机系统CentOS7,并安装好docker
- 下载Xshell和Xftp,Xshell用来连接虚拟机,运行虚拟机命令,Xftp用来虚拟机和主机传输文件,比原生的虚拟机好用
- 本人容器卷同一放在根目录下的
path
文件夹里,即/path/
目前进度:
- Docker安装运行MySQL