第28章 安全管理
数据库服务器的通常关键的数据,确保这些数据和完整需要利用访问空值,本章讲学习mysql 的访问空值,和用户管理,
28.1 访问空值
Mysql 服务器的安全基础是:用户应该对他们呢的需要具有访问权,既不鞥年多也不能少,环湖花束:
考虑一下内容:
多数用户只需要对表的进行读和邪,但是少数用户甚至需要删除表。
某些用户可能需要度表,但可能补选哟更新表。
这就是访问空值,管理访问空值需要创建和管理用户账户。
28.2.1 创建用户账户,使用create user 语句,如下:
Create user ben identityfinde by ‘password’
Rename user ben
28.2.3 设置访问权限
Show grant for bfrorea
用户定义为user@hostmysql 的权限用用户名称,。
为设置权限,使用grant语句,grant要求至少给出一下,
要授予的权限。
被授予的访问的权限数据
用户名
以下例子给出grant的用法:
Grant select on crachs for bforat;
Revoke select on crashcourse
Grant 和revoke可在几个层次上空值访问权限:
整个服务器,使用grant all 和revoke all.
整个数据库,使用on database.*
特定的表,使用
Select 使用select
Show databases 使用show databases;
Show view 使用show create view
Shutdown 使用Mysqladmin shutdown
Super
Update 使用update
Usage 无访问权限
未来的授权,在使用grant和revoke时,用户账户必须
Set password 还可以用来设置你自己的口令。
Set password=password
在不指定用户名称时,set password 更新当前用户。
28.3 小结
本章学习了通过赋予用户特殊的权限进行访问空值和保护服务器。
29章: 数据库维护:
想所有的数据一样,Mysql 的数据也必须经常备份。由于mysql 的数据
基于磁盘的文件,普通的背反系统和历程,就能备份Mysql 的文件。
但是,由于这些文件总是打开和使用的状态,普通的文件副本不一定
总是有效的。
下面列出这个问题的可能解决方案:
使用命令行使用程序mysqldump转存所有数据库到某个外部文件。
在进行常规备份前,这个使用程序能否正常运转,以便能够正确的
备份文件。
可用命令行使用程序mysqlhostcpy 从一个数据库复制到所有数据库(并非数据库引擎)
都支持这个使用程序。
可以使用Mysql 的backup table 或select into outfile转存到所有数据到某个文件。这2条语句都接受将要创建的系统文件名。此文件必须必须不存在,否则会出错。数据可用restore table 来复原。
首先拴心未写数据,为了所有数据被写到磁盘上,(宝贵索引),可能需要在进行备份前使用flush tables语句。
29.2 进行数据库维护
Mysql 提供了一些列的语句,可以用来保障数据库正确和
29.2 进行数据库的维护的
Mysql 提供了一系列的语句,可以用来保证数据库正确的运行。
一下是你应该知道的一些语句。
Anaynaze table:
Analyze table order;
Check table 用来针对许多问题,对表进行检查,在myISAM表上对索引的检查。
Check table 支持一系列的用于myisam 表的方法。Changeed检查子子最后一下检查依赖改动过的表。Extends执行最彻底的检查,fast检查为正常关闭的表,meduim检查被删除的连接并进行见检查。Quick只进行快速扫描。如下所示,check table发现和修复问题。
如果myISAM 表访问产生不正确的和不一致的结果,可能需要repair table 来修复,可能会有更多的问题要解决。
如果从一个表中删除大量的数据,应该使用optimize table来收回所用的空间。从而优化表的 性能。
29.3 诊断启动问题
服务器启动问题通常在对mysqld配置活服务器配置上本省体现的。
Mysql 在这个问题上反生报告错误,但是由于Mysql 为系统的jinx活服务的自动启动的。这些消息可能看不到。
在排除系统启动问题上,首先应该尽量的收手动的启动服务,服务其上:
--help 现实帮助
--safe –mode 装载减去某些配置的服务。
--verbose 现实全文本信息
--versiion 现实版本信息然后推出。
29.4 查看log 文件
Mysql维护管理员依赖的一些列log文件,主要有如下集中。
错误log: 他包含启动 和关闭问题以及关闭log通常名为hostname.er位于data目录。
查询log.他记录所有mysql 活动,在诊断问题应该非常有用此文件非藏可能会很快的变大,此log名称。
二进制而年间。他记录更新过的数据的所有树据。给log通常。
换换查询log. 故名思议。该log.记录执行缓慢的任何查询。
在使用日志是,可用fulsh logs来刷新和重新开始所有Log文件。
29.5 小结
本章介绍了Mysql数据库的某些维护工作和技术。
30 章;盖上性能
10.1 数据库管理员把她们生命的中的相当一部分的花在了调整,实验,以概述DBMS的性能之上。在诊断应用的迟缓现象,和性能问题时,性能不良的数据库 通常是最常见的或因。
可以卡出,下面那的内容并不能完全决定mysql 的性能,我们只是回顾一下前面各章的终点。提供性能优化谈到和分析一个交叉点。
首先,mysql 与所有的DBMS的一样具有相同的硬件的建议。在学习和mysql 时,使用旧的计算机作为服务器也是可以的。对于生产的服务器来说,应该坚持循环的这些建议。
一般来说,关键的生产应该运行在专用服务骑上。
Mysql 一个多用户多线程的DBMS,换言之,他经常的同时执行多个任务。
首先,总是有不知一种方法编写的同一条select 语句,应该实验连接,查询子查询。找出最佳的方法。
一般来说,存储过程执行的比一条一条执行其中的各条myselect 语句。
应该总是使用正确的数据类型。
绝不要检索的比需要好要多的数据,换言之,不要用select *
你的select 语句中有一系列的复杂的or 条件吗?通过使用多个selet 语句和连接她们的uninon 语句,你能看到极大的性能提升。
索引改善数据检索的性能,但损害数据插入,删除,和更新的性能,如果你有一些表,她们手机数据且不经商的被搜索,则在有必要前不要索引她们。
Like 很慢。一般来说,最好是使用的FULLext 而不是LIKE。
数据库是不断变化的实体,一组优化良好表,一会可能就面目犬吠了。
30.2 小结
本章回顾了与mysq性能相关的某些提示和说明。当然是最小的部分,