MySQL入门很简单: 12 MYSQL 用户管理
2024-09-03 13:46:30
1. 权限表
安装MySQL会自动安装一个名为mysql的数据库,存储权限表: user表, db表,host表,table_priv表,columns_priv表,proc_priv表等。
1)user表 :39个字段,分为四类——用户列,权限列,安全列,资源控制列
用户列: Host, User,Password, 这三个字段决定用户能否登陆;
权限列:以priv结尾的字段, 决定用户的权限;
安全列:
资源控制列:
2.账户管理
1)用户登录和退出
mysql -h hostname|hostIP -P port -u username -p DatabaseName -e "SQL语句"
2)新建普通用户
第一种:CREATE USER新建普通用户
user表示新建用户的账户, user由用户名(User)和主机名(Host)构成,IDENTIFIED BY用来设置用户密码
CREATE USER user [IDENTIFIED BY [PASSWORD] 'password' ]
[, user [IDENTIFIED BY [PASSWORD] 'password' ]]... 例子: CREATE USER 'test'@'localhost' IDENTIFIED BY 'test';
第二种:INSERT语句新建普通用户
INSERT INTO mysql.user(Host, User, Password) values ('hostname', 'username', PASSWORD('passward') );
第三种: GRANT语句新建普通用户
GRANT priv_type ON databases.table
TO user [ IDENTIFIED BY [PASSWORD] 'password']
[, user [ IDENITIFIED BY [PASSWORD] 'password']...
3) 删除普通用户
第一种:DROP USER
DROP USER user [,user] ...; 例子: DROP USER 'test2@localhost';
第二种:DELETE
DELETE FROM mysql.user WHERE Host='hostname' AND User='username';
4) root用户修改自己的密码
第一种 :mysqladmin命令
mysqladmin -u username -p password "new_password";
第二种:修改mysql数据库下的user表
UPDATE mysql.user SET Password=PASSWORD("new_password")
WHERE User="root" AND Host="localhost"; 执行UPDATE语句后,需要执行FLUSH PRIVILEGES加载权限;
第三种:使用SET语句修改root用户的密码
SET PASSWORD=PASSWORD("new_password");
5)root用户修改普通用户密码
第一种:SET语句修改普通用户密码
SET PASSWORD FOR 'username'@'hostname'=PASSWORD("new_password");
第二种:修改mysql数据率下的user表
UPDATE mysql_user SET Password=PASSWORD("new_password")
WHERE User='username' AND Host='hostname'';
第三种:GRANI语句修改普通用户密码
GRANT priv_type ON databases.table
TO user [ IDENTIFIED BY [PASSWORD] 'password']
6)普通用户修改密码
SET PASSWORD=PASSWORD('new_password');
7)root用户密码丢失的解决办法
3. 权限管理
待续
最新文章
- arm_linux_dt
- C#读写xml文件的常用方法
- 第一个Object-C类
- linux下安装php扩展redis缓存
- 3A. Shortest path of the king
- banana pro 板子
- JVM典型配置
- [Swust OJ 352]--合并果子(贪心+队列模拟)
- 【新提醒】N820 N821 android 4.2 V1.1版 - 大V综合交流区 - 360官方论坛
- Oracle错误——ORA-03113:在通信信道文件的末尾 解决方案
- Windows Phone开发(6):处理屏幕方向的改变
- mysqldump命令使用
- 什么是web标准??
- jquery中ajax使用
- 1.9 Android程序签名打包
- 【译】快速起步-JSX简介
- 建一个maven项目
- ELK新手教程——pomelo + log4js + ELK(一)
- ssh 中 远程文件传输
- router之switch
热门文章
- 华东交通大学2015年ACM“双基”程序设计竞赛1007
- python+splinter实现12306网站刷票并自动购票流程
- 一个简单的基于MINI2440开发板的启动代码
- 10.Spring集成一
- Hbase 表操作
- Python 类 面向对象(Classes)
- Naive Operations
- leetcode 196. Delete Duplicate Emails 配合查询的delete
- Unity Screen Screen.currentResolution 当前分辨率
- C# List(T).Reverse 方法 顺序反转