MYSQL用户管理笔记

权限表:

user、db、host、tables_priv、columns_priv和procs_priv

 

user:记录允许连接到服务器的账号信息,权限全局级

包括用户列(Host、User、Password)、权限列(Select_priv...)、安全列(ssl_cipher...)、资源控制列(max_questions...)

db:存储用户对某个数据库的操作权限 host:存储某个主机对数据库的操作权限(结构类似)

包括用户列(Host、Db、User)和权限列(Select_priv...)

tables_priv:对表设置操作权限 columns_priv:对表的某一列设置权限

procs_pri:可以对存储过程和存储函数设置操作权限

 

账户管理:

登录和退出MYSQL服务器

mysql -h localhost -u root -p testdb

-h 主机名 -u 用户名 -p 密码 -P 端口号 在最后可指定数据库名

新建普通用户

1.CREATE USER 'louie'@'localhost' IDENTIFIED BY '123456';(可不指定主机名,省略IDENTIFIED BY部分可以不需要密码登录)注意:CREATE USER语句新建用户没有任何权限

2.GRANT语句

GRANT SELECT,UPDATE ON *.* TO 'louie'@'localhost' IDENTIFIED BY '123456';(*.*所有数据库的所有表)(需检查语句,未创建成功)

创建成功查看权限

SELECT Host,User,Select_priv,Update_priv from mysql.user where user='louie';

3.INSERT INTO mysql.user(Host,User,Password,[Select_priv,Update_priv...])

VALUES('localhost','louie',PASSWORD('123456'),'Y','Y');(不确定是否可以)

删除普通用户

1.DROP USER 'louie'@'localhost'; 删除本地登录权限

DROP USER; 删除授权表的账户权限记录

2.DELETE FROM mysql.user WHERE Host='loaclhost' and User='louie';

修改root用户密码

1.mysqladmin -u root -h localhost -p password '123123';

2.修改mysql的user表

UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root' AND Host='localhost';

3.SET语句

SET PASSWORD=PASSWORD('newpwd');

root用户修改普通用户密码

1.SET语句

SET PASSWORD FOR 'louie' = PASSWORD('newpwd');

2.修改mysql的user表,如上;

3.GRANT语句

GRANT USAGE ON *.* TO 'louie' IDENTIFIED BY 'newpwd';

root用户密码丢失的解决办法(重点,linux用得到)

1.使用MySQLd命令启动MySQL服务

net stop mysql:先停止mysql服务,再使用如下命令启动mysql服务

mysqld --skip-grant-tables(Windows二选一)

mysqld-nt --skip-grant-tables

misqld_safe --skip-grant-tables user=mysql(linux二选一)

/etc/init.d/mysql start-mysqld --skip-grant-tables

2.重新设置密码

SET PASSWORD=PASSWORD('newpwd');

3.加载权限表

FLUSH PRIVILEGES;

权限管理

授权:GRANT

收回权限:REVOKE

查看权限:SHOW GRANTS FOR 'louie'@'localhost';

 

数据备份命令:

备份单个数据库

mysqldump -u root -p booksdb [TableName] > C:/backup/booksdb_20190730.sql

备份多个数据库

mysqldump -u root -p --databases booksDB testDB> C:\backup\books_testDB_20190730.sql

数据恢复命令:

mysql -u root -p booksDB < C:/backup/booksdb_20190730.sql

source C:/backup/booksdb_20190730.sql

 

 

 

 

 

 

你可能感兴趣的:(MySQL)