mysql的用户管理
1,mysql重置root密码。
-
编辑配置文件 /etc/my.cnf ,在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证
-
接下来我们需要重启MySQL,使用service mysqld restart
-
进入mysql中重置密码,这个用于mysql5.7 之前,而且使用这个语句可能会导致密码不生效。参考:https://forums.mysql.com/read.php?10,366354,366362#msg-366362
mysql> update user set password="你的新密码" where user="root";
mysql> flush privileges;
mysql> quit -
退出,注释掉配置文件新增的那行,重启。再登录。
2,mysql设置其它主机远程登录相关。
使用root用户登录mysql客户端,进入mysql库里面
1,设置访问单个数据库权限 mysql>grant all privileges on test.* to 'root'@'%'; 说明:设置用户名为root,密码为空,所有主机可访问数据库test,.*表示库中的所有表,root表示 mysql的用户名,'%'表示可以从所有主机登录 2,设置访问全部数据库权限 mysql>grant all privileges on *.* to 'root'@'%'; 说明:设置用户名为root,密码为空,所有主机可访问所有数据库* 3,设置指定用户名访问权限 mysql>grant all privileges on *.* to 'liuhui'@'%'; 说明:设置指定用户名为liuhui,密码为空,可访问所有数据库* 4,设置密码访问权限 mysql>grant all privileges on *.* to 'liuhui'@'%' IDENTIFIED BY 'liuhui'; 说明:设置指定用户名为liuhui,密码为liuhui,可访问所有数据库* 5,设置指定可访问主机权限 mysql>grant all privileges on *.* to 'liuhui'@'10.2.1.11'; 6,删除权限 mysql>revoke all privileges on *.* from 'liuhui'@'10.2.1.11';
3,mysql 的用户管理。 使用root登录后,在mysql.user 表里,可以select host,user,password 等信息。
mysql5.7以前使用下面的语句查询
mysql> select user,host,password from mysql.user;
mysql5.7以后
mysql> select user,host,authentication_string from mysql.user;
mysql> update mysql.user set authentication_string=password('123456') where user='root';
也是在这里配置远程登录主机。host='%'表示任意主机远程登录。user 列为空,表示任意用户 都可以登录。可以删除,创建,修改用户。(create、alter、drop)
修改mysql的用户密码,分别使用grant、alter、set修改 ①mysql> grant all on *.* to '用户名'@'登录主机' identified by '密码'; ②mysql> alter user '用户名'@'登录主机' identified by '密码(自定义)'; #这个在5.7以上使用,并且要查看 plugin 的类型,在带上参数 ③mysql> SET PASSWORD FOR '用户名'@'登录主机' = PASSWORD('密码'); eg:set password for root@192.168.1.101 = password('123456'); ③mysql> update mysql.user set password=password('123456') where user='root' and host='localhost'; tips: 密码必须是被加密的,客户端才能正常登录。 一般使用update语句修改的密码都没有加密的原因,是因为没有用 password() 这个函数吧。使用这个函数也可以修改成功密码。 建议修改后去看下密码。 数据库名是 反引号 (`dadabase`)
tips:
密码必须是被加密的,客户端才能正常登录。
一般使用update语句修改的密码都没有加密的原因,是因为没有用 password() 这个函数吧。使用这个函数也可以修改成功密码。
建议修改后去看下密码。
数据库名是 反引号 (`dadabase`)
4,mysql设置简单密码
mysql5.7上可以设置不符合要求的简单的密码,首先跳过了登录验证,然后进去修改root的密码,再没有说密码不符合要求的报错提示了
mysql5.7以上的版本里,password字段都替换成了authentication_string
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通