在docker上部署mysql后,本地可以直接远程访问mysql
时间: 2024-02-15 16:30:01 浏览: 46
当你在 Docker 上部署 MySQL 时,默认情况下容器内部的 MySQL 服务只能被容器内部的其他服务或容器访问,无法被外部主机访问。如果你需要从本地主机访问 MySQL 服务,需要将容器内的 MySQL 服务绑定到宿主机上。
你可以通过在运行容器时使用 `-p` 选项将容器内部的 MySQL 端口映射到宿主机上的一个端口,例如:
```
docker run -d -p 3306:3306 --name mysql mysql
```
这将容器内部的 MySQL 端口 3306 映射到宿主机的 3306 端口上。然后你就可以在本地主机上通过 `127.0.0.1:3306` 或 `localhost:3306` 访问容器内的 MySQL 服务了。
如果你需要从其他主机访问容器内的 MySQL 服务,需要将容器绑定到宿主机的 IP 地址上,例如:
```
docker run -d -p 宿主机IP:3306:3306 --name mysql mysql
```
这将容器内部的 MySQL 端口 3306 映射到宿主机的 3306 端口上,并且绑定到宿主机的 IP 地址上。然后你就可以在其他主机上通过 `宿主机IP:3306` 访问容器内的 MySQL 服务了。
相关问题
docker安装mysql后开放远程
要在Docker上安装MySQL并允许远程访问,可以按照以下步骤操作:
1. 首先,确保已经安装了Docker和Docker Compose。如果没有,请先安装它们。
2. 创建一个名为`docker-compose.yml`的文件,并在其中添加以下内容:
```yaml
version: '3'
services:
mysql:
image: mysql:latest
restart: always
environment:
MYSQL_ROOT_PASSWORD: your_password
ports:
- "3306:3306"
```
将`your_password`替换为您想要设置的MySQL root密码。
3. 保存并关闭`docker-compose.yml`文件后,使用以下命令启动MySQL容器:
```shell
docker-compose up -d
```
4. 当容器启动后,您可以使用以下命令进入MySQL容器的Shell:
```shell
docker exec -it mysql bash
```
5. 在MySQL容器的Shell中,使用以下命令连接到MySQL服务器:
```shell
mysql -u root -p
```
然后输入之前设置的密码。
6. 现在,您可以在MySQL Shell中执行必要的命令来开放远程访问。例如,要允许来自所有IP地址的远程访问,执行以下命令:
```sql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;
```
将`your_password`替换为您想要设置的密码。
7. 最后,重新加载MySQL特权表以使更改生效:
```sql
FLUSH PRIVILEGES;
```
现在,您应该能够从远程主机连接到Docker上运行的MySQL数据库了。请确保在生产环境中采取适当的安全措施,如限制远程访问的IP地址范围和使用强密码等。
docker 安装了mysql,怎么远程登录mysql
要远程登录MySQL安装在Docker容器中的MySQL服务器,可以按照以下步骤进行操作。
首先,确保你已经正确地安装和启动了MySQL容器。你可以使用以下命令来启动一个MySQL容器:<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [docker安装mysql,并实现远程连接](https://blog.csdn.net/qq_41538097/article/details/107045349)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* [docker安装mysql8并配置远程访问](https://blog.csdn.net/lirui874125/article/details/124942844)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]