
如图所示,其中标红位置就是服务器地址的填写位置,一般可写主机名称或IP地址。
IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。
你的MYSQL数据库里面有一个数据库,名字教做mysql,里面有个表,名字叫做user,你看一下这个表的结构和现有数据,你就知道应该怎么做了,比如你可以添加一条数据,Host为你指定的IP,user可以是%,password就不管了,后面设置相应的权限(可以全部都是Y),这样那个机器无论用什么用户和密码都可以连接数据库,而拥有你指定的权限。耐心点吧,我相信你一看就明白。
参考资料:
1:设置mysql的配置文件
/etc/mysql/mycnf
找到 bind-address =127001 将其注释掉;//作用是使得不再只允许本地访问;
重启mysql:/etc/initd/mysql restart;
2:登录mysql数据库:mysql -u root -p
mysql> use mysql;
查询host值:
mysql> select user,host from user;
如果没有"%"这个host值,就执行下面这两句:
mysql> update user set host='%' where user='root';
mysql> flush privileges;
或者也可以执行:
mysql>grand all privileges on to root@'%' identifies by ' xxxx';
其中 第一个表示数据库名;第二个表示该数据库的表名;如果像上面那样 的话表示所有到数据库下到所有表都允许访问;
‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;
后面到‘xxxx'为root 用户的password;
举例:
任意主机以用户root和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
IP为1921681102的主机以用户myuser和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON TO 'myuser'@'1921681102' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;1改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库中 "user" 表里的 "host" 字段,把"localhost"改称"%",即可。
mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;
2授权法。例如,你想用户myuser使用密码mypassword通过ip地址连接到mysql服务器,使用:
GRANT ALL PRIVILEGES ON TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为19216813的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON TO 'myuser'@'19216813' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;检查一下用户的权限的域。grant all privileges on 'root'@'%' identified by '12345';@后面的变成‘127001’或‘localhost’再试试吧可以用IP地址连接的,如果是mysql与PHP在一台服务器建议你还是用loclhost 或127001,如果远程的话需要把MYSQL的远和连接权限打开。把连接用户用作用域改成%如原用户名是XXX@localhost要改成xx@%,用户主机改成%
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)