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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux mysql 数据库开启外部访问设置指南相关的知识,希望对你有一定的参考价值。

Linux下设置mysql和允许外部机器访问,具体目录是具体情况而定,有的人是安装了在个人目录下,则找到对应的目录则可以
Linux下设置MySQL和允许外部机器访问sudo vi /etc/my.cnf 
具体目录是具体情况而定,有的人是安装了在个人目录下,则找到对应的目录则可以。 
一、配置文件的修改 
1.#sudo vim /etc/mysql/my.conf 
找到 bind-address = 127.0.0.1 
注释掉这句话 
二、Mysql数据库的修改 
1) [[email protected] etc]# mysql -u root -p 
Enter password: 
2)grant all privileges on database.* to [email protected] 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%[email protected]%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%[email protected]%27192.168.0.101%27[/email] IDENTIFIED BY ‘mypassword‘ WITH GRANT OPTION; 
以上两种方法是从网上找的。本人通过第二种方法中的例1解决了我所遇到的问题,并成功连接了Linux系统中的MySQL数据库服务器。

以上是关于linux mysql 数据库开启外部访问设置指南的主要内容,如果未能解决你的问题,请参考以下文章

linuxdocker设置禁止外部访问

Linux 如何开启MySQL远程访问权限 允许远程连接

Linux下开启mysql数据库的远程访问权限

linux对外开放端口

linux下mysql允许外部远程访问配置

vmware workstation linux 如何开启21端口