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密码,然后回车

(2)进入数据库mysql

Mysql(none)> use mysql;

(3)设置用户 root 可以在任意 IP 下被访问

Mysqlmysql> grant all privileges on *.* to 'root'@'%' identified by '123456';

(4)设置用户 root 可以远程被访问:

Mysqlmysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

注:Mysqlmysql>后面的是完整的一段,copy请copy好了,也别漏了;号

(5)刷新权限表使修改生效

Mysqlmysql> flush privileges;

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

直接修改更改"mysql"数据库里的"user"表里的"host"项,从"localhost"改为"%"

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

二、修改数据库的密码

由于mysql的用户表中的密码是加过密的,这里,我们就不要直接修改数据表了。就采用命令方式来修改密码,请按照如下步骤进行

root@localhost \~# mysql -uroot -p

Mysql(none)> use mysql;

Mysqlmysql> 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';

Mysqlmysql> grant all privileges on *.* to 'root'@'%' identified by 'newpassword';

Mysqlmysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'newpassword' WITH GRANT OPTION;

注: Mysqlmysql> 后面的是完整的一段, copy copy 好了,也别漏了 ;

Mysqlmysql> flush privileges;

若想更改其他用户的密码,也可以采用此方式,把root改成其他用户名即可

由于AS-V1000视频监控平台是基于linux&mysql系统的,经常会用到这些情况。

相关推荐
SomeOtherTime17 小时前
Postgresql触发器实现对表的日志审计
数据库·postgresql
Fnetlink117 小时前
FNET 云网安 260819
网络·人工智能·安全·网络安全
这个DBA有点耶17 小时前
Oracle 迁移金仓兼容性评估指南:5 大维度深度拆解
数据库·oracle·架构
wear工程师17 小时前
Redis 和 MySQL 缓存一致性,延迟双删为什么不是强一致
redis·mysql
Android系统攻城狮18 小时前
Linux PipeWire深度解析之pw_factory_create_object调用流程与实战(七十二)
linux·音频进阶·pipewire音频进阶
lsh曙光18 小时前
playbook剧本(2)--Ansible变量
linux·运维·网络
lengjingzju18 小时前
编译与调试完全指南—第14章 系统配置与调优
linux
发光小北18 小时前
IO‑Link 从站转接模块如何应用?
网络
添砖java‘’19 小时前
Redis中常用数据结构
数据库·redis·缓存
大鹏的NLP博客19 小时前
通用 Linux 嵌入式板端 C/C++ ABI 与 Glibc 依赖治理规范
linux·c++·交叉编译