Ubuntu和CentOS 基于Linux内核,无非是系统应用不同,提供的函数库有差异.
如果将一个Ubuntu版本的MySQL应用安装到CentOS系统,MySQL在调用Ubuntu函数库时,会发现找不到或者不匹配,就会报错了.
Docker是一个快速交付应用、运行应用的技术,Docker将用户程序与所需要调用的系统(比如Ubuntu)函数库一起打包,运行到不同操作系统时,直接基于打包的函数库。
https://www.docker.com/products/docker-desktop
或者
brew install --cask --appdir=/Applications docker
docker pull mysql/mysql-server
创建容器并运行
docker run --name mysql01 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql/mysql-server
容器名称为:mysql01
端口为:3306
密码为:123456
在Docker Destop中查看
我这里的容器ID是
58e26d8b954455bee1632f6cec8f4929ca4526011dd4e2c0d4b4fe8e9303ac9d
进入镜像中的mysql(ti 后面的字符串是mysql镜像启动的容器ID或者用容器名字)
docker exec -ti 容器ID /bin/bash
登陆mysql
mysql -u root -p
输入创建容器时设置的密码,比如我这里设置的是 123456
修改user表中的Host:
update user set Host='%' where User='root';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
最后刷新:
flush privileges;
然后就可以使用 其他客户端口连接 mysql
联系客服