使用Navicat连接云服务器mysql报 2003 - Can‘t connect to MySQL server on “ip“(10060 “Unknown error“)
在mysql成功启动、网络能通、mysql已经授权成功的前提下, 直接登录到阿里云-->找到控制台-->云服务器-->安全-->防火墙 -->添加规则 ; 加上3306这个端口就OK了, 具体看下面操作截图打开navicat再次尝试连接, 成功连接--------- 如果是由于远程登录用户权限不足的情形请接着往下看:---------------------mysql
·
在mysql成功启动、网络能通、mysql已经授权成功的前提下, 直接登录到阿里云-->找到控制台-->云服务器-->安全-->防火墙 -->添加规则 ; 加上3306这个端口就OK了, 具体看下面操作截图
打开navicat再次尝试连接, 成功连接
--------- 如果是由于远程登录用户权限不足的情形请接着往下看:---------------------
mysql处于安全考虑,root用户只能在本地登录。
因此我们需要进入容器创建用户并授权。
且mysql MYSQL_ONETIME_PASSWORD环境变量默认为true,root用户密码默认只能使用一次,登录mysql后需要修改root的密码。
通过以下命令进入mysql容器
docker exec -it mysql /bin/bash
紧接着通过执行下列命令进入到mysql交互模式
mysql uroot -p你的mysql登录密码
创建用户、授权。%代表任何地址都可以连接到服务器。
CREATE USER 'LJC'@'%' IDENTIFIED BY 'pwd123456';
GRANT ALL PRIVILEGES ON *.* TO 'LJC'@'%' WITH GRANT OPTION;
'LJC': 自定义远程登录mysql数据库的用户名
再次打开navicat连接,即可成功。
3、上面较为麻烦,还需进入mysql修改想对应的设置,下面一条命令即可配置全部信息。包括设置字符集、用户、密码等操作。-e 代表环境变量 -d 以后台模式运行容器 -p端口映射 --character-set-server为mysql字符集设置
docker run -d -p 3306:3306
-e MYSQL_USER="ljc"
-e MYSQL_PASSWORD="password"
-e MYSQL_ROOT_PASSWORD="password"
--name mysql01
mysql/mysql-server
--character-set-server=utf8
--collation-server=utf8_general_ci
更多推荐
已为社区贡献2条内容
所有评论(0)