mysql要点问题文档

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

要点问题文档

Q1: Mysql数据库中有千万数据,Mysql无法启动(无论是重启机器还是重启Mysql服务都无效)?

A1: 因为Mysql数据所在目录空间已满, 将Mysql的Data文件目录移至别一位置即可.

Q2: 在庞大的数据记录中Mysql查询缓慢?

A2: 增加关键字段索引; 尽量少用Left join, Right join, in, or等等相关复合查询以及<, >, <=, >=, <>等等运算符, 多用=, limi, and等.

注意: 参加查询的字段尽量靠前,有助于查询速度更快.

Q3: Mysql启动时出现如下错误:

Starting MySQL..Manager of pid-file quit without updating f[FAILED]

A1: 因为mysql-bin.000010文件权限被修改.

成功后的权限:

-rw-rw---- 1 mysql mysql 1691 Aug 14 11:31 /var/lib/mysql/mysql-bin.000010

搜索资料:

如果用mysqld_safe --user=mysql & 命令启动数据库则正常,说明f正确无误。

打开/etc/selinux/config把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器后问题就得以解决。那么这个问题就涉及到MySQL的各个版本了。

相关资料:

好的性能依赖于使用存在的索引。要保证优化器使用索引,请您遵循以下步骤:

∙使用列本身,而不使用引用列的函数和表达式。

∙避免在查询串的开头使用通配符。

∙只比较相同类型的列。

∙在Where 语法中包含所有AND 操作符。

列本身

运行一个查询的时候,使用函数或者表达式引用列会导致索引暂时顺序混乱。

通配符

当使用LIKE 进行比较时,只要第一个字符不是通配符,MySQL 就不会对索引做任何变动。

列类型

早于3.23 的版本把比较规则限制为同类型的列。从3.23 开始不同类型的列也可以进行比较,如果列类型不同,你可能会注意到性能有所下降。

AND 操作符

当在WHERE 语句中使用AND 操作符时,必须在表达式的每一部分使用前缀。

索引的缺点

到目前为止,我们讨论的都是索引的优点。事实上,索引也是有缺点的。

首先,索引要占用磁盘空间。通常情况下,这个问题不是很突出。但是,如果你创建每一种可能列组合的索引,索引文件体积的增长速度将远远超过数据文件。如果你有一个很大的表,索引文件的大小可能达到操作系统允许的最大文件限制。

第二,对于需要写入数据的操作,比如DELETE、UPDATE以及INSERT操作,索引会降低它们的速度。这是因为MySQL不仅要把改动数据写入数据文件,而且它还要把这些改动写入索引文件。

相关文档
最新文档