码迷,mamicode.com
首页 > 数据库 > 详细

linux下mysql Insert update delete 事务 用户管理

时间:2016-07-07 11:09:34      阅读:293      评论:0      收藏:0      [点我收藏+]

标签:linux下mysql insert update delete 事务 用户管理

linux下mysql Insert update delete  事务 用户管理

1.INSERT插入语句格式:

INSERT INTO tb_name (字段1, 字段2, ...) VALUES (值1,值2, ...)[,(值1, 值2, ...),...];

INSERT INTO 表名 SET 字段1=值1,字段2=值2,...;

INSERT INTO 表名 (字段1,字段2,...) SELECT (字段1,字段2,...) FROM 表名 [WHERE 条件];

2.REPLACE插入语句格式:

REPLACE INTO tb_name (字段1, 字段2, ...) VALUES (值1,值2, ...)[,(值1, 值2, ...),...];

REPLACE INTO 表名 SET 字段1=值1,字段2=值2,...;

REPLACE INTO 表名 (字段1,字段2,...) SELECT (字段1,字段2,...) FROM 表名 [WHERE 条件];

3.DELETE删除表中内容:

DELECT FROM 表名 WHERE 条件;

DELECT FROM 表名;#清空表但不会重置计数器

TRUNCATE 表名; #清空表并重置AUTOCREMENT计数器

4.UPDATE更新表中内容

UPDATE 表名 SET 字段1=...,字段2=... WHERE 条件;

5.锁表:

读锁:共享锁

写锁:独占锁

LOCK TABLES 表名 {READ|WRITE};  

UNLOCK TABLES

6.事务

6.1.明确启动事务:

START TRANSACTION:启动事务

ROLLBACK: 回滚

COMMIT: 提交  #注意提交后就不能回滚

6.2.没有明确启动事务:

autocommit:能实现自动提交,每一个操作都直接提交;

建议:明确使用事务,并且关闭自动提交;

SET AUTOCOMMIT=0;

SET @@autocommit;

6.3.事务保存点

保存点:SAVEPOINT 名字

回滚至保存点:ROLLBACK TO 名字 

7.隔离级别:

 READ-UNCOMMITTED:读未提交

 READ-COMMITTED:读提交

 REPEATABLE-READ:可重读

 SERIALIZABLE:可串行

SELECT @@tx_isolation;

SET tx-isolation=‘READ-UNCOMMITED‘;

8.创建用户

CREATE USER willow@‘%‘ IDENTIFIED BY ‘redhat‘;

5.授权用户权限

GRANT CREATE ON ‘willow‘.* TO ‘willow‘@‘%‘

GRANT INSERT ON ‘willow‘.* TO ‘willow‘@‘%‘

GRANT ALTER ON ‘willow‘.* TO ‘willow‘@‘%‘

GRANT SELECT ON ‘willow‘.* TO ‘willow‘@‘%‘

GRANT UPDATE (Age) ON willow.students TO willow@‘%‘;  #授权用户仅字段修改权限

6.删除用户

DROP USER ‘用户名‘@‘主机‘

9.重命名用户

RENAME USER 旧用户名 TO 新用户名

10.取回用户授权

REVOKE SELECT ON willow.* FROM willow@‘%‘;

11.mysql管理员密码忘记后取回密码:

停止mysql服务

service mysqld stop

vim /etc/init.d/mysqld 

  在start语句中插入

  --skip-grant-tables

   --skip-networking

技术分享

service mysqld stop

mysql     #本地连上服务器此时跳过授权直接登入

USE mysql;

UPDATE user SET Password=PASSWORD(‘redhat‘) WHERE User=‘root‘;

注意:此时不能直接用SET命令修改密码,因为已跳过授权,

# SET PASSWORD FOR ‘root‘@‘localhost‘=PASSWORD(‘redhat‘);将会报错

通过更新授权表方式直接修改其密码,并且将mysqld刚才新增的内容移除再重启服务器mysql。

启动mysqld_safe时传递两个参数:

--skip-grant-tables

--skip-networking

--skip-name-resolve



本文出自 “夏维柳” 博客,请务必保留此出处http://willow.blog.51cto.com/6574604/1811720

linux下mysql Insert update delete 事务 用户管理

标签:linux下mysql insert update delete 事务 用户管理

原文地址:http://willow.blog.51cto.com/6574604/1811720

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!