您的位置:首页 > 数据库 > SQL

7.《MySQL必知必会》事务,全球化,安全管理与维护

2017-04-25 10:44 183 查看
注:博客中总结《MySQL必知必会》中的知识点,第26,27,28,29,30章的核心内容;

涉及到的操作符:ROLLBACK,COMMIT,SAVEPOINT,CHARACTER,COLLATION,USER,GRANT,REVOKE;

书中用到的表的介绍及其脚本文件:《Mysql必知必会》中表的介绍

管理事务处理

事务处理可以用来维护数据库的完整性,它保证成批的MySQL操作要么完全执行,严么完全不执行;

- 事务(transaction)指一组SQL语句;

- 回退(rollback) 指撤销指定SQL语句的过程;

- 提交(commit) 指未存储的SQL语句结果写入数据库表;

- 保留点(savepoint) 指事务处理中设置的临时占位符;

事务处理用来管理INSERT,UPDATE,DELETE。不能回退SELECT;不能回退CREATE,DROP操作;

1.使用rollback

SELECT * FROM ordertotals;
START TANSACTION;  -- 标识事务的开始;
DELETE FROM order totals;
SELECT * FROM order totals;
ROLLBACK;  -- 标识事务的结束;
SELECT * FROM ordertotals;


2.使用commit

START TANSACTION;  -- 标识事务的开始;
DELETE FROM orderitems WHERE order_num=20010;
DELETE FROM orders WHERE order_num=20010;
COMMIT;
-- COMMIT语句仅在前两条语句不出错是写出更改;


3.使用保留点

SAVEPOINT TO delete1; -- 创建
ROLLBACK TO delete1;  -- 回退

-- 保留点越多越好,但是要及时释放保留点;
RELESAE SAVEPOINT delete1; --释放


全球化和本地化

1.字符集和校对顺序

字符集:为字母和符号的集合;
b7f2

编码:为某个字符集成员的内部表示;

校对:为规定字符如何比较的指令;

2.使用字符集和校对顺序

-- 显示所有可用的字符集;
SHOW CHARACTER SET;

-- 查看所支持校对的完整列表;
SHOW COLLATION;

-- 确定在所用的字符集和校对;
SHOW VARIABLES LIKE 'character%';
SHOW VARIABLES LIKE 'collation%';

-- 在创建表时,指定一个字符集和一个校对顺序;
CREATE TABLE matable
(
columnn1 INT,
columnn2 VARCHAR(10)
) DEFAULT CHARACTER SET hebrew
COLLATE hebrew_general_ci;


安全管理

1.访问控制

管理访问控制需要创建和管理用户账号

有的用于管理,有的供用户使用,有的供开发人员使用;

建议不要使用root;

2.管理用户

-- 获得用户列表
SELECT user FROM user;

-- 创建用户账号,ben是用户名,BY后面是口令;
CREATE USER ben IDENTIFIED BY 'p@$$w0rd';

-- 删除用户账号
DROP USER bforta;

-- 设置访问权限
SHOW GRATNS FOR bforta; -- 显示权限
GRANT SELECT ON crashcourse.* TO bforta; -- 添加SELECT权限
REVOKE SELECT ON crashcourse.* FROM bforta; -- 删除SELECT权限

-- 设置口令(不指定用户,则默认更新当前用户口令)
SET PASSWORD = Password('1233456');


数据库维护

1.备份数据

使用命令行实用程序mysqldump转储所有数据库内容到某个外部文件;

可用命令行实用程序mysqlhotcopy从一个数据库复制所有数据;

可以使用MySQL的BACKUP TABLE或SELECT INTO OUTFILE转储所有数据到某个外部文件;

2.进行数据库维护

-- 用来检查表键是否正确;
ANALYZE TABLE orders;

-- 用来针对许多问题对表进行检查;
CHECK TABLE orders,orderitems;


3.查看日志文件

错误日志;

查询日志;

二进制日志;

缓慢查询日志;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息