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

posted @   风风羊  阅读(103)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示