参考文章:`phpMyAdmin访问远程MySQL数据库的方法
本文采用授权的方法:
- 在mysql服务器上执行如下示例命令:
grant all privileges on *.* to 'admin'@'192.168.1.%' identified by 'xxxx(密码)' with grant option;
此操作创建用户名为admin的用户,并赋予全部权限,允许ip地址段为192.168.1.x的服务器远程访问数据库。
- phpmyadmin创建服务器连接
1. 在浏览器中输入:http://服务器ip地址/phpmyadmin/setup/
2. 点击“新建服务器” ,填写表单:
服务器名称:主机名称
服务器主机名:主机IP
认证方式:config
config 认证方式的用户名:用户名
config 认证方式的密码:用户密码
3. 保存后返回setup界面,点击下载,下载的文件为 config.inc.php
4. 编辑phpmyadmin文件夹下的config.inc.php,添加内容如下示例(可将步骤4文件中的对应内容复制进去),:
/* Server: localhost [1] */
$i++;
$cfg['Servers'][$i]['verbose'] = '主机名称';
$cfg['Servers'][$i]['host'] = '主机IP';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = '用户名';
$cfg['Servers'][$i]['password'] = '密码';
5.访问服务器IP/phpmyadmin,并选择mysql服务器,输入用户名与密码如果不能成功访问,需要在服务器上执行下列语句。
该语句主要作用是关一下selinux对httpd数据库连接的限制。其实图省事儿的话,一上来就把selinux关了就是最好的,毕竟我们不是专业运维。
setsebool -P httpd_can_network_connect_db=1
问题解决。