MySQL之权限管理和备份
2020-12-06 本文已影响0人
Ping开源
八、权限管理和备份
1.用户管理
1)SQLyog可视化操作
尝试添加新用户和删除用户。选择的主机是什么,登录的时候就是什么。
创建新用户:
删除用户:
删除用户
2)SQL命令操作
用户表:mysql.user
本质:对这张表进行增删改查。
例:
--创建用户:CREATE USER 用户名 IDENTIFIED BY 密码
CREATE USER programmer IDENTIFIED BY '123456'
--修改密码
SET PASSWORD = PASSWORD('123456') --修改当前用户密码
SET PASSWORD FOR programmer = PASSWORD('123456') --修改指定用户密码
--重命名:RENAME USER 原名字 TO 新名字
RENAME USER programmer TO programmer2
--用户授权:GRANT ALL PRIVILEGES ON 库.表 TO 用户
GRANT ALL PRIVILEGES ON *.* TO programmer2 --给programmer2全部的授权
--ALL PRIVILEGES除了给别人授权,其它都能够干
--查询权限
SHOW GRANTS FOR programmer2 --查看指定用户的权限
--ROOT用户权限:GRANT ALL PRIVILEGES ON *.* TO 'root@localhost' WITH GRANT OPTION
--撤销权限
REVOKE ALL PRIVILEGES ON *.* TO programmer2 --撤销programmer2的全部权限
--删除用户:DROP USER 用户名
DROP USER programmer
2.MySQL备份
1)为什么要备份?
①保证重要的数据不丢失。
②数据转移
2)MySQL数据库备份
①直接拷贝物理文件。
②在Sqlyog等可视化工具中手动导出:在想要导出的表或者库中,右击选择备份/导出——>备份数据库,转储到SQL…
③使用命令行导出:使用mysqldump
#mysqldump -h主机 -u用户名 -p密码 数据库 [表1 表2 …]>物理磁盘位置/文件名
mysqldump -hlocalhost -uroot -p123456 school student result>D:/a.sql
④导入sql文件
Ⅰ登录的情况下,切换到指定的数据库。
#source 备份文件
source d:/b.sql
Ⅱ没有登录的情况下(本质上还是要输入用户名、密码登录)。
#mysql -u用户名 -p密码 库名<备份文件
mysql -uroot -p123456 school<D:/b.sql
导入和导出的使用范围:
Ⅰ备份数据库,防止数据丢失。
Ⅱ把数据库中内容给别人,可提供导出的sql文件。