下面是详细讲解“Linux下docker安装mysql8并配置远程连接”的完整攻略。
安装docker
如果您的系统上尚未安装Docker,请按照以下步骤进行安装。
- 在服务器上安装Docker
Docker有一个方便的脚本,叫做get-docker.sh,可以用来安装最新版本的Docker。以下是安装脚本的命令:
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh
- 启动Docker服务
安装Docker后,您需要启动Docker服务。以下是启动Docker的命令:
sudo systemctl start docker
- 确认Docker已安装并正在运行
最后,请确认Docker已成功安装并正在运行。以下是confirming Docker的命令:
sudo docker run hello-world
如果一切正常,Docker将下载并运行一个简单的容器。
安装MySQL 8
有几种不同的方法可以安装MySQL,但在这里我们将使用Docker容器来安装MySQL 8。
- 下载MySQL 8镜像
使用以下命令从Docker Hub下载MySQL 8镜像:
sudo docker pull mysql:8
- 启动MySQL容器
以下是启动MySQL容器的命令:
sudo docker run -d --name mysql-server -p 3306:3306 -e MYSQL_ROOT_PASSWORD=yourpassword mysql:8
上面的命令将在后台启动MySQL容器,使用3306端口并指定root用户密码。
在运行上述命令之后,您可以使用以下命令检查MySQL容器是否正在运行:
sudo docker ps -a
如果MySQL容器正在运行,您将看到它的状态为“Up”。
- 连接到MySQL容器
现在,您可以使用以下命令连接到MySQL容器:
sudo docker exec -it mysql-server bash
这将使您进入MySQL容器的终端。
- 配置MySQL 8
在MySQL容器中,使用以下命令启动MySQL客户端:
mysql -uroot -p
输入您在第2步中指定的root密码,并登录到MySQL服务器。
然后,使用以下命令创建一个新的MySQL用户并授予该用户远程访问权限:
CREATE USER 'yourusername'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
GRANT ALL PRIVILEGES ON *.* TO 'yourusername'@'%';
FLUSH PRIVILEGES;
在上述命令中,要替换“yourusername”和“yourpassword”为您自己的值。
- 测试远程连接
现在,您可以从其他计算机上的MySQL客户端进行远程连接。请使用以下命令测试远程连接:
mysql -h your-server-ip -P 3306 -u yourusername -p
在上面的命令中,请替换“your-server-ip”、“yourusername”和“yourpassword”为实际的值。
出于安全原因,我们建议您使用SSH隧道来保护MySQL的远程连接。您可以使用以下命令创建SSH隧道来连接到MySQL服务器:
ssh -L 3306:localhost:3306 your-server-ip
这将创建一个将本地端口3306重定向到远程服务器上的端口3306的SSH隧道。现在,您可以使用本地MySQL客户端连接到MySQL服务器(localhost:3306)。
这就是完整的“Linux下docker安装mysql8并配置远程连接”的攻略。希望能对您有所帮助。
接下来是两条示例说明:
示例1:创建一个MySQL镜像并启动容器
以下是创建一个MySQL镜像并启动容器的示例命令:
sudo docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=mysql -d mysql:8
上面的命令将创建一个名为“mysql-container”的Docker容器,并在后台运行。
示例2:连接到MySQL容器并创建一个新的数据库
以下是连接到MySQL容器并创建新数据库的示例命令:
docker exec -it mysql-container mysql -u root -p
上述命令将连接到MySQL容器并打开MySQL客户端。在此处,您可以输入“mysql”用户的密码。
然后,使用以下命令在MySQL中创建一个新的数据库:
CREATE DATABASE mydb;
上面的命令将创建一个名为“mydb”的新数据库。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux下docker安装mysql8并配置远程连接 - Python技术站