如何打开MySQL中root账户的远程登录

如何打开MySQL中root账户的远程登录,第1张

你看看mysql数据库中user表的内容就明白了,查看的SQL:

select from mysqluser

mysql里面用户,是上面表的前两个字段host、user共同决定的,如果你只需要从一个固定的IP登录过来,例如19216811,那么你需要在user表中增加一条记录host=19216811、user=root。如果你希望从所有机器都能登录root,那么需要此表有一条记录host=%、user=root

为了迁移mysql到oracle,采用了oracle的sql developer工具,并下载了mysql

jdbc驱动(为了让sql developer连接mysql)

为了从oracle sql developer远程以root连接mysql

1

2

3

mysql> GRANT ALL PRIVILEGES ON TO root@"%" IDENTIFIED BY '123456' WITH GRANT OPTION;

Query OK, 0 rows affected (000 sec)

mysql>

在设置root账户密码时,可以选择是否允许其从远程访问。默认情况下是不允许的。

在命令行下,可以有两种大同小异的方法来作此设置:

(1)

1

2

3

mysql>GRANT ALL PRIVILEGES ON TO root@localhost IDENTIFIED BY 'something' WITH GRANT OPTION;

mysql>GRANT ALL PRIVILEGES ON TO root@"%" IDENTIFIED BY 'something' WITH GRANT OPTION;

第一句增加了一个root用户授权通过本地机(localhost)访问,密码逗something地。

第二句则是使用通配符,授与root用户从任何其它主机发起的访问。

(2)亦可直接使用update语句修改user表:使用root用户或其他用户登录mysql,转到mysql数据库

1

2

3

4

5

update user set host='localhost' where user='root';

flush privileges;//只允许root在本机登录

update user set host='%' where user='root';

flush privileges;//允许root远程访问

注意,以上一定要加flush语句。

另外,如果要建新用户,则用grant语句比较方便,记住语句grant总是创建新用户。

例如我目前的库:

mysql> select host,user from user;

+-----------+--------+

| host | user |

+-----------+--------+

| % | mytest |

| % | root |

| localhost | mytest |

| localhost | root |

+-----------+--------+

4 rows in set (000 sec)

root和mytest都既能本地连,也能远程连

以上就是关于如何打开MySQL中root账户的远程登录全部的内容,包括:如何打开MySQL中root账户的远程登录、mysql授权远程访问%为什么root不行、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/sjk/10181961.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存