
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;
1、使用“Ctrl + R”组合键快速打开cmd窗口,并输入“cmd”命令,打开cmd窗口。
2、使用“mysql -uroot -proot”命令可以连接到本地的mysql服务。
3、使用“use mysql”命令,选择要使用的数据库,修改远程连接的基本信息,保存在mysql数据库中,因此使用mysql数据库。
假设:
本地计算机ip:1921681100
远程计算机ip:1921681244
解决方法:
1,远程计算机(ip:1921681244)执行如下:
开启服务器:/etc/initd/mysqlserver
start
登陆服务器:bin/mysql
-u
root
-p
使用服务器:mysql>
use
mysql
创建远程登陆用户并授权
:
mysql>
grant
all
PRIVILEGES
on
test
to
andy@'1921681100'
identified
by
'123456';
上面的语句表示将
test
数据库的所有权限授权给
andy
这个用户,允许
andy
用户在
1921681100这个
IP
进行远程登陆,并设置
andy
用户的密码为
123456
。
下面逐一分析所有的参数:
all
PRIVILEGES
表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,delete,create,drop
等,具体权限间用“,”半角逗号分隔。
test
表示上面的权限是针对于哪个表的,test
指的是数据库,后面的
表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“”,对于某一数据库的全部表授权为“数据库名”,对于某一数据库的某一表授权为“数据库名表名”。
andy
表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。
1921681100
表示允许远程连接的
IP
地址,如果想不限制链接的
IP
则设置为“%”即可。
123456
为用户的密码。
执行了上面的语句后,再执行下面的语句,方可立即生效。
>
flush
privileges;
2,本地计算机(ip:1921681100):
执行如下:/mysql
-h
1921681244
-u
andy
-p
123456
你的mysql数据库里面有一个数据库,名字教做mysql,里面有个表,名字叫做user,你看一下这个表的结构和现有数据,你就知道应该怎么做了,比如你可以添加一条数据,host为你指定的ip,user可以是%,password就不管了,后面设置相应的权限(可以全部都是y),这样那个机器无论用什么用户和密码都可以连接数据库,而拥有你指定的权限。
耐心点吧,我相信你一看就明白。
以上就是关于如何通过ip访问MySql数据库全部的内容,包括:如何通过ip访问MySql数据库、如何允许mysql数据库远程访问、如何访问linux系统中的mysql数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)