MySQL初学(6)——事务、DCL管理员

事务的四大特征:

 1.原子性:是不可分割的最小操作单位,要么同时成功,要么同时失败
 2.持久性:当事务提交或回滚后,数据库会持久化的保存数据
 3.隔离性:多个事务之间,相互独立
 4.一致性:事务操作前后,总量不变

事务的隔离级别:

   概念:多个事务之间隔离的,相互独立的。但是如果多个实务操作同一批数据,则会引发一些问题,设置不同的隔离级别,就可以解决这些问题。
   存在问题:
   	1.脏读:一个事务,读取到另一个事务中没有提交的数据
   	2.不可重复读(虚读):在同一个事务中,两次读取的数据不一样
   	3.幻读:一个事务操作数据表中所有记录,另一个事务添加了一个数据,则第一个事务查询不到自己的修改       
   隔离级别:
   	1.read uncommitted:读未提交
   		产生问题:脏读、不可重复度、幻读
   	2.read committed:读已提交(Oracle)
   		产生问题:不可重复读、幻读      
    3.repeatable read:可重复读 (MySQL默认)  
   	 	产生问题:幻读   
    4.serializable:串行化
    	可以解决所有问题
   隔离级别从小到大安全性越来越高,效率越来越低

DCL:管理用户,授权

  1.管理用户
  		1.添加用户:
             CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
             
  		2.删除用户:
             DROP CREATE USER '用户名'@'主机名' ;
             
  		3.修改用户密码:
  		    UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = '用户名';
            或者
            SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');
          MySQL中忘记密码?
          	1.cmd --> net stop mysql   停止MySQL服务(管理员权限)
          	2.使用无验证方式启动MySQL服务:mysqld --skip-grant-tables
          	3.打开新的cmd窗口,直接输入mysql,敲回车就可以登陆成功
          	4.use mysql;
          	5.利用上面语句改密码
          	6.关闭两个cmd窗口
          	7.打开任务管理器,手动结束mysqld.exe进程
          	8.启动mysql服务
          	9.使用新密码登录
            
  		4.查询用户:
  		-- 切换到mysql数据库
             USE mysql;
        -- 查询User表
             SELECT *FROM USER;

2.权限管理
		1.查询权限
			 SHOW GRANT FOR '用户名'@'主机名';
		2.授予权限
		     GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
		     GRANT ALL ON *.* TO '用户名'@'主机名'; 授予所有权限在任意数据库任意表
		3.撤销权限
			 REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值