赞
踩
之前做网站的时候在自己电脑上搭建了PHP+Apache+MySQL服务器,今天突发奇想,想试着在实验室的其他电脑上访问我自己电脑的数据库,即通过http://我的IP/phpMyAdmin的方式。
我的电脑IP是10.103.26.216。
由于phpMyAdmin是一个网页版的数据库管理工具,所以首先要让局域网里的其他用户能够访问我的Apache服务器。在Apache的安装目录下面的conf里面找到httpd.conf,打开,找到ServerName localhost:80,改为ServerName 10.103.26.216:80。
然后重启Apache,在其他电脑上试了一下,输入http://10.103.26.216/phpMyAdmin,可以显示登陆页面,如下:
输入用户名、密码,之后却无法登录,也没有报错。我想,可能是和phpMyAdmin的配置有关,可能之前配置成了只允许从localhost登录,需要重新配置一下。
打开phpMyAdmin的文件夹,找到config.inc.php打开,找到$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin/';改为$cfg['PmaAbsoluteUri'] = 'http://10.103.26.216/phpMyAdmin/';;找到$cfg['Servers'][$i]['host'] = 'localhost';改为$cfg['Servers'][$i]['host'] = '10.103.26.216';
重新登录,结果还是无法进入数据库,再修改libraries下面的config.default.php,同样修改上面两项。
再重新登录,发现报错:#1130 无法登录 MySQL 服务器,百度之,解决办法如下:
再次登录,可以进入数据库了!
>>>>>>>>>>接着说,
我觉得如果让所有人都以root权限登录数据库的话会很危险,所以我想添加一个普通用户,假设为vosamo,本来我认为应该比较简单,一开始采取方法如下:
从phpMyAdmin以root用户登录;
添加新用户vosamo,设置好密码,权限,只设置读写删改的权限;
把主机host设置为%(表示可以从任意主机登录);
确定。
退出,从另一台电脑,以vosamo登录,结果登不上,报错:#1045 无法登录 MySQL 服务器!
不知为何,百思不得其解。然后把该用户删除,尝试以root身份在命令行中以如下命令添加用户:
mysql>grant select,insert,update,delete on *.* to vosamo@“%” identified by "vosamo";
这条命令表示新添加一个名为vosamo的用户并授权,on *.*表示该用户对所有数据库都有上述权限;@“%”表示可以通过任意主机访问;identified by "vosamo"表示密码为vosamo;
添加完之后,flush privilege;刷新权限。
再次以vosamo远程登录,成功!
疑问就是不知道为什么在命令行可以成功,在phpMyAdmin的界面下添加就不行~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。