mysql 12章_MySQL数据库的高级管理
时间:2021-07-01 10:21:17
帮助过:40人阅读
1、 用户的创建:
1) 方式1:使用MySQL提供的用户管理语句完成CREATE
USER
语法:
Create user <用户名
@主机名> identified
by <初始密码
>;
说明:
identified by用于指定用户的初始密码,系统会自动对密码进行加密处理,新创建的用户将被保存到mysql.user表中,密码采用加密后的暗文保存。
举例:
CREATE USER ‘user_39‘@
‘localhost‘ IDENTIFIED
BY "
123456";
SELECT * FROM mysql.`
user`;
DROP user user_39;
2) 方式2:通过使用insert into语句向MySQL.user表中添加记录,达到创建用户的目的。
语法:
Insert into。。。。。。
说明:
a) 有6个字段通常需要赋值:HOST、user、password、ssl_cipher、x509_issuer、x509_subject
b) 不会自动对密码加密,需要时可以使用password()函数手动加密
c) 用户创建后需要使用权限刷新语句FLUSH PRIVILEGES;才能被系统识别
举例:
-- 密码需要用加密函数
INSERT INTO mysql.
user(HOST,
user,password,ssl_cipher,x509_issuer,x509_subject)
VALUES(
‘localhost‘,
‘user_399‘,PASSWORD(
‘123456‘),
‘‘,
‘‘,
‘‘);
-- 刷新权限
FLUSH
PRIVILEGES;
-- 删除user_399
DELETE FROM mysql.`
user`
WHERE HOST
= ‘localhost‘ AND user = ‘user_399‘;
2、 用户权限的授予:
语法:
Grant {权限列表
| all}
ON {数据库名.数据库对象名列表
| *.
*}
to <用户名
@主机名>[identified by 密码] [with grant option];
说明:
1) All是所有权限的通配符,
*是所有数据库和数据库对向的通配符。
2) 使用grant也可以创建不存在的新用户,同时也完成授权。
3)
with grant option若添加此项表示被授权的用户还可以将权限授予其他用户,前提是该用户具有grant的权限。
举例:
GRANT ALL ON myschool39.
* TO ‘user_39‘@
‘localhost‘ WITH GRANT OPTION;
GRANT ALL ON mysql.
* TO ‘user_39‘@
‘localhost‘ WITH GRANT OPTION;
3、 用户权限的回收:
语法:
revoke{权限列表
| all}
ON {数据库名.数据库对象名列表
| *.
*}
from <用户名
@主机名>;
说明:当某个用户的权限被回收时,它授予出去的权限会不会被回收?
举例:REVOKE ALL ON myschool39.
* FROM ‘user_39‘@
‘localhost‘ ;
4、 用户的修改:修改用户密码
语法:
Set password
[for 用户名@主机名] = password(新密码);
说明:
1)
for 用户名
@主机名:指定给其他某个用户修改密码,不指定表示给当前用户修改密码。
2) passw()函数必须使用,否则无法完成修改。
举例:
1.
SET password
FOR ‘user_39‘@
‘localhost‘ = password(
‘654321‘);
-- 给user_39修改密码
2.
SET password
= password(
‘654321‘);
-- 给当前用户修改密码
5、 删除用户
语法:drop user <用户名
@主机名>;
举例:
二、 数据库的备份与恢复
为了防止意外发生,我们需要对数据库中的数据进行备份,一旦灾难来临时,可以使用备份的数据进行恢复。
MySQL提供了备份和恢复的命令,命令需要在DOS命令提示符下使用。
1. 数据库的备份
语法1:备份单个数据库
C:\>mysqldump
-u 用户名 –p 密码 数据库名 数据表名
1 数据表名
2 > 路径\及备份文件名.sql
语法2:备份多个数据库
C:\>mysqldump
-u 用户名 –p 密码
--databases 数据库名 数据表名 1 数据表名 2 > 路径\及备份文件名.sql
语法3:备份全部数据库
C:\>mysqldump
-u 用户名 –p 密码 –
-all-databases
> 路径\及备份文件名.sql
举例:
1) mysqldump –u root
-proot myschool39
> d:\db39.sql
2) mysqldump –u root
-proot
--databases myschool39 mysql > d:\mutil.sql
3) mysqldump –u root
-proot –
-all-databases
> d:\
all.sql
2. 数据库的恢复
语法1:恢复单个数据库
C:\>mysqldump
-u 用户名 –p密码 数据库名
< 路径\及备份文件名.sql
语法2:恢复多个或全部数据库
C:\>mysqldump
-u 用户名 –p密码
< 路径\及备份文件名.sql
举例:
1) mysqldump –u root
-proot myschool39
< d:\db39.sql
2) mysqldump –u root
-proot
< d:\mutil.sql
3) mysqldump –u root
-proot
< d:\
all.sql
mysql 12章_MySQL数据库的高级管理
标签:命令提示符 sch 手动 开发 ant 数据库名 过程 val ash