文章内容输出来源:拉勾教育JAVA就业训练营
总目录跳转链接:总目录
MySQL总目录:MySql 5.2.28 安装与使用(目录在最底下)
如有侵权请联系本人
邮箱:xiaogueika@tom.com
------------------------------DCL(数据控制语言)------------------------------
MySql默认使用的都是 root 用户,超级管理员,拥有全部的权限。除了root用户以外,我们还可以通过DCL语言来定义一些权限较小的用户, 分配不同的权限来管理和维护数据库。
一、创建用户
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
参数 | 说明 |
---|---|
用户名 | 创建的新用户,登录名称 |
主机名 | 指定该用户在哪个主机上可以登陆,本地用户可用 localhost 如果想让该用户可以 从任意远程主机登陆,可以使用通配符 % |
密码 | 登录密码 |
主机用:%
表示 用户可以在任意电脑登录 mysql服务器.
创建用户示例:
-
创建
admin1
用户,只能在localhost
这个服务器登录 mysql 服务器,密码为123456
CREATE USER 'admin1'@'localhost' IDENTIFIED BY '123456'; -- 用户名:admin1 主机名:localhost 密码:123456
-
创建 admin2 用户可以在任何电脑上登录 mysql 服务器,密码为 123456
CREATE USER 'admin2'@'%' IDENTIFIED BY '123456'; -- 用户名:admin2 主机名:% 密码:123456
二、用户授权
创建好的用户,需要进行授权
GRANT 权限 1, 权限 2... ON 数据库名.表名 TO '用户名'@'主机名'
参数 | 说明 |
---|---|
权限 | 授予用户的权限,如 CREATE 、ALTER 、SELECT 、INSERT 、UPDATE 等。如果要授予所有的权限则使用 ALL |
ON | 用来指定权限针对哪些库和表。 如果要授予所有的表库则使用 *.* |
TO | 表示将权限赋予某个用户。 |
用户授权示例:
-
给
admin1
用户分配对 db4 数据库中products
表的操作权限:查询
GRANT SELECT ON db4.products TO 'admin1'@'localhost'; -- 权限:查询 可操作数据:db4.products 用户: admin1@localhost
-
给 admin2 用户分配所有权限,对所有数据库的所有表
GRANT ALL ON *.* TO 'admin2'@'%'; -- 权限:ALL(所有) 可操作数据:*.*(所有) 用户: admin2@%
三、查看权限
SHOW GRANTS FOR '用户名'@'主机名';
查看权限示例:
查看root
用户权限
SHOW GRANTS FOR 'root'@'localhost';
四、删除用户
DROP USER '用户名'@'主机名';
查看权限示例:
删除 admin1
用户
DROP USER 'admin1'@'localhost';
五、查询用户
选择名为 mysql
的数据库, 直接查询 user
表即可
use mysql;
SELECT * FROM USER;
------------------------------数据库备份&还原------------------------------
备份的应用场景 在服务器进行数据传输、数据存储和数据交换,就有可能产生数据故障。比如发生意外停机或存储介质损坏。 这时,如果没有采取数据备份和数据恢复手段与措施,就会导致数据的丢失,造成的损失是无法弥补与估量的
命令行备份
进入到Mysql安装目录的 bin
目录下, 打开DOS命令行.
-- DOS命令
mysqldump -u 用户名 -p 密码 数据库 > 文件路径;
示例:执行备份, 备份db2
中的数据 到 D盘的 db2.sql 文件中
-- 存放地址:D:/db2.sql 数据库:db2
mysqldump -uroot -proot db2 > D:/db2.sql;
命令行恢复
恢复数据 还原 db2 数据库中的数据
注意:还原的时候需要先创建好数据库
use 还原的数据库;
source sql 文件地址;