权限表:
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