08 触发器/用户权限/备份还原数据库

触发器:

需求: 当往员工表插入一条数据时,往员工日志插入一条记录。
-- 创建增加触发器
CREATE TRIGGER tri_empAdd AFTER INSERT ON employee FOR EACH ROW
    INSERT INTO emp_log(content) VALUES('员工被插入了一条记录');
-- 创建修改触发器
CREATE TRIGGER tri_empUpd AFTER UPDATE ON employee FOR EACH ROW
    INSERT INTO emp_log(content) VALUES('员工被修改了一条记录');
-- 创建删除触发器
CREATE TRIGGER tri_empDel AFTER DELETE ON employee FOR EACH ROW
    INSERT INTO emp_log(content) VALUES('员工被删除了一条记录');

-- 删除触发器
DROP TRIGGER tri_empAdd;

mysql权限问题:(操作后建议重启mysql服务)

-- root用户: 超级管理员。    权限: 增删改查(数据库,表,数据)
-- 给mysql数据库分配不同权限的不同用户

-- mysql数据库:存放mysql配置信息,包括用户信息
USE mysql;
-- 用户表
SELECT * FROM USER;
08 触发器/用户权限/备份还原数据库_第1张图片
Paste_Image.png
-- 加密函数(md5算法--单向加密)
SELECT PASSWORD('root'); -- *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B

-- 修改用户密码(也要用md5加密函数加密先)
UPDATE USER SET PASSWORD=PASSWORD('123456') WHERE USER='root';

-- 分配权限给不同的用户(如果不存在该用户,那么会创建该用户)
-- 需求: 分配查询day15数据库的employee表的权限给eric用户,密码为‘123456’
GRANT SELECT ON day15.employee TO 'eric'@'localhost' IDENTIFIED BY '123456';
GRANT DELETE ON day15.employee TO 'eric'@'localhost' IDENTIFIED BY '123456';

SHOW TABLES;
08 触发器/用户权限/备份还原数据库_第2张图片
Paste_Image.png

备份还原数据库:

Paste_Image.png
Paste_Image.png

原理:
备份:把构建该数据库所需要的语句打包成了一个.sql
还原:执行备份的.sql语句,构建回来之前数据库

你可能感兴趣的:(08 触发器/用户权限/备份还原数据库)