我已经在我的电脑上安装了 mySql,所以端口 3306 已经很忙。这就是为什么我必须使用 3306 以外的端口的原因。我希望能够在不使用 docker 命令的情况下将我的机器连接到我的 docekr 实例,这样我就能够使用我的应用程序(Spring Web 应用程序)连接到该实例)。
\n\n我使用的 Docker 命令:
\n\ndocker run --name jt-mysql -e MYSQL_ROOT_PASSWORD=password -p 3307:3307 -d mysql\nRun Code Online (Sandbox Code Playgroud)\n\n然后我尝试通过以下方式连接到该位置:
\n\nmysql --user=root -P 3307 -p\nRun Code Online (Sandbox Code Playgroud)\n\n在这种情况下,我收到以下错误:
\n\n\n\n\n错误 1045 (28000):用户 \'root\'@\'localhost\' 的访问被拒绝(使用\n 密码:YES)
\n
请注意,如果我尝试使用安装在我的电脑上的实例,它可以工作,使用:
\n\nmysql --user=root -P 3306 -p\nRun Code Online (Sandbox Code Playgroud)\n\n有关我的 docker 实例的其他信息:
\n\ndocker ps\nRun Code Online (Sandbox Code Playgroud)\n\n我得到:
\n\n\n\n\nf52a94aa63da mysql "docker-entrypoint.s\xe2\x80\xa6" 4\n 分钟前 Up 4 分钟 3306/tcp, 33060/tcp,\n 0.0.0.0:3307->3307/tcp jt-mysql
\n
在我的 docker 映像中包含状态(使用 docker 命令输入)我得到:
\n\nConnection id: 11\nCurrent database: \nCurrent user: root@localhost\nSSL: Not in use\nCurrent pager: stdout\nUsing outfile: \'\'\nUsing delimiter: ;\nServer version: 8.0.19 MySQL Community Server - GPL\nProtocol version: 10\nConnection: Localhost via UNIX socket\nServer characterset: utf8mb4\nDb characterset: utf8mb4\nClient characterset: latin1\nConn. characterset: latin1\nUNIX socket: /var/run/mysqld/mysqld.sock\nBinary data as: Hexadecimal\nUptime: 16 min 50 sec\nRun Code Online (Sandbox Code Playgroud)\n\n使用 env 命令:
\n\nHOSTNAME=f52a94aa63da\nMYSQL_ROOT_PASSWORD=password\nPWD=/\nHOME=/root\nMYSQL_MAJOR=8.0\nGOSU_VERSION=1.7\nMYSQL_VERSION=8.0.19-1debian9\nTERM=xterm\nSHLVL=1\nPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n_=/usr/bin/env\nRun Code Online (Sandbox Code Playgroud)\n
小智 5
在端口 3306 启动 MySQL 容器并在端口 3307 公开的命令
docker container run -d --name=LocalMySQLDB -p 3307:3306 -e MYSQL_ROOT_PASSWORD=password mysql
Run Code Online (Sandbox Code Playgroud)
或者
docker run -d --name=LocalMySQLDB -p 3307:3306 -e MYSQL_ROOT_PASSWORD=password mysql
Run Code Online (Sandbox Code Playgroud)
上述命令启动“LocalMySQLDB”容器内的 MySQL 数据库服务器
现在要连接到容器化 mysql 实例,请使用下面附加的命令
mysql -h 127.0.0.1 -uroot -P 3307 -ppassword
Run Code Online (Sandbox Code Playgroud)
为了测试目的,我在本地机器上尝试了很多次。它肯定也对你有用。如果它不适用于您的情况,请发表评论。
| 归档时间: |
|
| 查看次数: |
14841 次 |
| 最近记录: |