Linux 配置MySQL的远程连接

安装、启动mariadb

yum install mariadb-server mariadb  # centos7 安装

systemctl start mariadb  #启动MariaDB
systemctl stop mariadb  #停止MariaDB
systemctl restart mariadb  #重启MariaDB
systemctl enable mariadb  #设置开机启动
mysql_secure_installation #进行MariaDB的相关简单配置

##首先是设置密码,会提示先输入密码
##Enter current password for root (enter for none):<–初次运行直接回车
##设置密码
##Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
##New password: <– 设置root用户的密码
##Re-enter new password: <– 再输入一次你设置的密码
##其他配置
##Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车
##Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车,
##Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
##Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车
##初始化MariaDB完成,接下来测试登录

mysql -uroot -p
复制代码

当远程连接时报错:


有两种解决方法: 

 1.授权法 

 

GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; // %:表示从任何主机连接到mysql服务器
FLUSH   PRIVILEGES;
或者
GRANT ALL PRIVILEGES ON *.* TO 'user'@'116.30.70.187' IDENTIFIED BY 'password' WITH GRANT OPTION;//表示从指定ip从任何主机连接到mysql服务器
FLUSH   PRIVILEGES; 复制代码

 2.改表法 

可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入MySQL后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root'  and host='localhost';
mysql>select host, user from user;
然后重启MySQL服务。或再执行 执行一个语句 mysql>FLUSH RIVILEGES 使修改生效。复制代码















转载于:https://juejin.im/post/5bed2232e51d456f8645940d

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值