MySQL:从其他系统/计算机连接
时间:2020-01-09 10:42:42 来源:igfitidea点击:
在CentOS/Fedora/RHEL/Redhat Linux下,如何从同一VLAN中的其他服务器(例如Apache或者Tomcat应用程序服务器)连接到MySQL数据库服务器?
首先,您需要打开数据库服务器的远程访问。
步骤1:配置MySQL服务器进行远程访问
打开终端或者使用ssh命令登录到192.168.1.5:
$ ssh [email protected]
编辑/etc/my.cnf,执行:
# vi /etc/my.cnf
修改或者追加如下:
# make sure the following line is deleted or commented out # skip-networking bind-address = 192.168.1.5
保存并关闭文件。
重新启动mysql服务器,执行:
# service mysqld restart
确保TCP端口3306已为业务打开
验证TCP端口3306是否打开,执行:
# netstat -tulpn | grep :3306
步骤2:TCP端口3306的Linux防火墙配置
您需要在防火墙级别打开TCP端口3306,执行:
# iptables -A INPUT -i eth0 -s 192.168.1.8 -p tcp --destination-port 3306 -j ACCEPT # service iptables save
步骤3:配置数据库远程访问
您需要使用名为foo的用户名,从名为192.168.1.8的远程IP授予对名为salesdb的现有数据库的访问权限。
首先,以root用户身份连接到mysql服务器,执行:
# mysql -u root -p mysql
执行以下命令:在mysql>提示符下,执行:
mysql> update db set Host='192.168.1.8' where Db='salesdb'; mysql> update user set Host='192.1681.8' where user='foo'; mysql> \q
登录到192.168.1.8并执行以下命令以测试mysql服务器的远程访问题描述:
$ mysql -u foo -h 192.168.1.5 -p salesdb
输出示例:
Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 27720995 Server version: 5.0.77 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>