欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

linux mysql 数据库开启外部访问设置指南

程序员文章站 2023-12-20 22:03:04
linux下设置mysql和允许外部机器访问sudo vi /etc/my.cnf 具体目录是具体情况而定,有的人是安装了在个人目录下,则找到对应的目录则可以。 一、配置文...
linux下设置mysql和允许外部机器访问sudo vi /etc/my.cnf
具体目录是具体情况而定,有的人是安装了在个人目录下,则找到对应的目录则可以。
一、配置文件的修改
1.#sudo vim /etc/mysql/my.conf
找到 bind-address = 127.0.0.1
注释掉这句话
二、mysql数据库的修改
1) [root@etc etc]# mysql -u root -p
enter password:
2)grant all privileges on database.* to admin@192.168.1.1 identified by 'password'
注意:
(1)192.168.1.1是欲连接到此mysql数据库的客户端的ip地址,而不是mysql数据库所在数据库服务器的ip地址,切记
(2)password就是mysql数据库root用户的password,根据实际情况需要修改

如何访问linux系统中的mysql数据库?
前不久在linux系统中安装了mysql数据库,但linux系统是一个虚拟机,而真正的主机是win7,我就试着在win7下面用mysql数据库工具去访问linux系统下的mysql数据库。但在连接的过程中就出现了问题:
host '192.168.0.101' is not allowed to connect to this mysql server
然后我百度了一下这个问题,找到了以下的几种解决办法。

方法一:(修改表)
进入linux系统下的mysql数据库中,打开user表,找到“host”字段值为“localhost”的记录,将值“localhost”更新为“%”。
命令如下:
#mysql -u root -p
enter password:
mysql>use mysql;
mysql>update user set host='%' where user='root' and host='localhost';
mysql>select host,user from user;

方法二:(授权)
例1
如果你想myuser使用mypassword从任何主机连接到mysql数据库服务器的话。使用如下授权权命令:
grant all privileges on *.* to [email='myuser'@'%']%27myuser%27@%27%%27[/email] identified by 'mypassword' with grant option;
例2
如果你想允许用户myuser从ip为192.168.0.101的主机连接到mysql数据库服务器并使用mypassword作为密码。使用如下授权命令:
grant all privileges on *.* to [email='myuser'@'192.168.0.101']%27myuser%27@%27192.168.0.101%27[/email] identified by 'mypassword' with grant option;
以上两种方法是从网上找的。本人通过第二种方法中的例1解决了我所遇到的问题,并成功连接了linux系统中的mysql数据库服务器。

上一篇:

下一篇: