Mysql 连接的一些报错及解决方案
MySql 连接其他远程服务器
mysql -u root -p
mysql -h 127.0.0.1 -u root -p -P 3306
Host ‘xxx.xx.xxx.xxx’ is not allowed to connect to this MySQL server
username 是用户名 password 是你的密码 localhost 是服务器
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' WITH GRANT OPTION;
CREATE USER 'username'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
MySQL 8.0 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
flush privileges;
Mysql 开启远程连接权限
# 登录 mysql
mysql -u root -p
# 创建用户
CREATE USER 'username'@'%' IDENTIFIED BY 'password';
# 授权
GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION;
# 授权给 root 用户
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
# 刷新权限
FLUSH PRIVILEGES;
另外,Ubuntu 系统可能要防火墙放行一下
# 查看防火墙状态
sudo ufw status
# 开启防火墙
sudo ufw enable
# 开启端口
sudo ufw allow 3306
参考文章
上一篇
Docker 容器访问宿主机
Docker 容器内应用程序需要连接运行在宿主机上的数据库。文章介绍了多种方法,包括使用`--network host`、`host.docker.internal` 以及常用的 Docker 命令,解决 Docker 容器访问宿主机的问题。文中提供了 `ifconfig` 命令查看宿主机 IP 地址,`docker ps`、`docker network ls`、`docker network inspect`命令查看 Docker 容器网络信息,以及 `host.docker.internal:3306`和`https://host.docker.internal:8080` 等访问宿主机的方法。
下一篇
Linux Shell 使用日期作为文件名
学习如何在 Linux shell 中使用 date 命令生成包含日期和时间的文件名。