mysql最常见问题:允许远程访问和修改密码 的详细解决方法

目 录

一、不能通过navicat等数据库客户端远程访问

(一)问题

(二)解决方法:开启远程可访问

1、输入授权命令的方式

2、直接更改数据库中的用户表

二、修改数据库的密码


Mysq在Linux系统中用的非常多,有的Linux默认都安装了MySQL;大部分时候,大家都习惯采用图像化的数据库客户端访问mysql等数据库,比如navicat就非常好用。

数据库的增删改查等操作大家基本都会,在navicat上操作更是方便。而我发现很多人经常回碰到标题所述两个问题,所以,今天给大家重点总结一下。

一、不能通过navicat等数据库客户端远程访问

(一)问题确认

有时候我们发现使用navicat无法连接成功,而网络是通的,端口也是对的。 这时候,大部分原因是因为mysql没有开启允许远程访问。

我们也可以登录到mysql上查看,输入命令:

select User,authentication_string,Host from user;

结果如下图:

可以看出root用户,host为只允许本机登录,说明没有开启远程访问。

(二)解决方法:开启远程可访问

有如下两种方法,

1、输入授权命令的方式

可以按照以下步骤操作:

(1)登录到mysql

root@localhost \~\]# mysql -uroot -p 输入mysql的root密码,然后回车 ![](https://file.jishuzhan.net/article/1745103588121645058/caa1998f39a357ae3f2eb0296660309a.webp) (2)进入数据库mysql Mysql\[(none)\]\> use mysql; (3)设置用户 root 可以在任意 IP 下被访问 Mysql\[mysql\]\> grant all privileges on \*.\* to 'root'@'%' identified by '123456'; (4)设置用户 root 可以远程被访问: Mysql\[mysql\]\> GRANT ALL PRIVILEGES ON \*.\* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; (*注:Mysql\[mysql\]\>后面的是完整的一段,copy请copy好了,也别漏了;号*) (5)刷新权限表使修改生效 Mysql\[mysql\]\> flush privileges; #### 2、直接更改数据库中的用户表 直接修改更改"mysql"数据库里的"user"表里的"host"项,从"localhost"改为"%" update user set host='%' where user='root'; ## 二、修改数据库的密码 由于mysql的用户表中的密码是加过密的,这里,我们就不要直接修改数据表了。就采用命令方式来修改密码,请按照如下步骤进行 \[root@localhost \~\]# mysql -uroot -p Mysql\[(none)\]\> use mysql; Mysql\[mysql\]\> alter user 'root'@'localhost' identified by 'newpassword'; (*注:* *(* *1* *)* *'newpassword'* *是你要修改后的密码;* *(2* *)* *ocalhost'* *是数据库所在机器的名字或* *IP* *地址;* *(3* *)* *mysql5.7* *以上版本使用语句* *update user set authentication_string=passworD("newpassword") where user='root';*) Mysql\[mysql\]\> grant all privileges on \*.\* to 'root'@'%' identified by 'newpassword'; Mysql\[mysql\]\> GRANT ALL PRIVILEGES ON \*.\* TO 'root'@'%' IDENTIFIED BY 'newpassword' WITH GRANT OPTION; (*注:* *Mysql\[mysql\]\>* *后面的是完整的一段,* *copy* *请* *copy* *好了,也别漏了* *;* *号* ) Mysql\[mysql\]\> flush privileges; ![](https://file.jishuzhan.net/article/1745103588121645058/28dca79a39d2eaece3c062d123af9f85.webp) 若想更改其他用户的密码,也可以采用此方式,把root改成其他用户名即可 由于[AS-V1000视频监控平台](http://vidisit.cn/cp/html/?4.html "AS-V1000视频监控平台")是基于linux\&mysql系统的,经常会用到这些情况。

相关推荐
小猿姐1 小时前
KubeBlocks AI:AI时代的云原生数据库运维探索
数据库·人工智能·云原生·kubeblocks
吱吱企业安全通讯软件2 小时前
吱吱企业通讯软件保证内部通讯安全,搭建数字安全体系
大数据·网络·人工智能·安全·信息与通信·吱吱办公通讯
NocoBase3 小时前
10 个开源工具,快速构建数据应用
数据库·低代码·开源
yuanpan3 小时前
ubuntu系统上的conda虚拟环境导出方便下次安装
linux·ubuntu·conda
麻辣清汤3 小时前
结合BI多维度异常分析(日期-> 商家/渠道->日期(商家/渠道))
数据库·python·sql·finebi
云边云科技3 小时前
零售行业新店网络零接触部署场景下,如何选择SDWAN
运维·服务器·网络·人工智能·安全·边缘计算·零售
钢铁男儿3 小时前
Python 正则表达式(正则表达式和Python 语言)
python·mysql·正则表达式
rainFFrain3 小时前
Boost搜索引擎项目(详细思路版)
网络·c++·http·搜索引擎
AOwhisky4 小时前
Linux 文本处理三剑客:awk、grep、sed 完全指南
linux·运维·服务器·网络·云计算·运维开发
Gavin_9154 小时前
从零开始部署经典开源项目管理系统最新版redmine6-Linux Debian12
linux·ruby on rails·开源·debian·ruby·redmine