mysql 事务 grant权限
Posted Noblesse!By~Learning
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 事务 grant权限相关的知识,希望对你有一定的参考价值。
mysql 课堂笔记
一、创建事务
事务相当于将多个sql语句打包起来
mysql事务四个原则 ACID 原则
1.原子性 要么都执行要么都不执行,一个事物就是一个整体
2.一致性 事物执行,前后数据保持一致,不存在数据丢失。
3.隔离性 在执行过程中对外界保持隔离,操作过程中的数据不能互相访问//事务之间未提交数据不是相互可见
3#隔离有一定的优先级别,默认是最高级别:不可访问操作中的数据;
4.持久性 通过事务提交的数据将永远持久化 正常刷新 保存在硬盘 不能回退;转账的两个过程:假设 a b 两个账号转账
update accounta set monry= money-1000 where aid=1;
......x.....
update accountb set monry =monry+1000 where bid=1;如果x过程发生错误,会导致数据丢失,1000大洋丢失;
事务 转账的过程
STATR TRANSACTION;
update accounta set monry= money-1000 where aid=1;
......x.....
update accountb set monry =monry+1000 where bid=1;COMMIT;
数据会存储到缓存中,(临时数据的形式),如果两条语句都执行成功,提交到硬盘;
ROLLBACK;
如过 存在 任意语句执行失败 ,数据恢复到初始状态 rollback;一旦commit rollback 事务将自动停止;在此之前数据都是操作中数据,不可见的数据,缓存中的数据;
二、创建用户
create user \'username1\'; 创建用户 没有密码
create user \'username2\' identify by 8888; 创建用户,设置密码8888
grant select on dbname.table1 to \'username1\' ; 把数据库dbname的查询表table1的权限授予用户username1;
grant delete on dbname.* to \'username1\' ; 把数据库dbname的删除所有表的权限授予用户username1;两个权限冲突,在不能查询的情况下无法更新数据库;
grant all on dbname.* to \'username2\'; 把数据库dbname的所有权限/具体权限授予用户username2;
grant select,update,insert,delete on dbname.* to \'username2\';drop user \'username1\';
三、删除的三种方式
truncate 删除数据保留表结构保留主键位置清除主键id;
delete 清空表内容保留表结构;
drop 删除;
以上是关于mysql 事务 grant权限的主要内容,如果未能解决你的问题,请参考以下文章
Mysql Grant权限(WITH GRANT OPTION)