Mysql启动报错’./mysql-bin.index’ not found的解决方案

Mysql启动报错’./mysql-bin.index’ not found的解决方案
今天试着更改了mysql的数据存储目录(如何更改mysql的存储目录),但是启动mysql一直提示Starting MySQL. ERROR! The server quit without updating PID file (/data/mysql/11Z.pid). 于是乎去查看mysql的错误日志,cat /data/mysql/11Z.err 。 131204 09:09:15 mysqld_safe Starting mysqld daemon with databases from /data/mysql /usr/local/mysql/bin/mysqld: File '....


如何启用MySQL的查询语句缓存

如何启用MySQL的查询语句缓存
我们写的程序可能需要进行大量的数据库操作。数据库常常会成为产生瓶颈的原因。 开启查询语句缓存也是优化MySQL的一个策略。 MySQL 是我们开发程序常用的数据库。它具有在内存中缓存常用查询语句的能力,这样一个给定的查询语句再次被调用时,MySQL将立即从缓存中将其返回。然而, 在大多数MySQL中,这一特性默认是被禁用的。为了启用它,向你的MySQL配置选项文件添加以下代码;该配置文件的名称为my.cnf,...


如何开启Mysql的慢查询

如何开启Mysql的慢查询
如何找出Mysql中哪些查询语句缓慢,查询时间过长,我们需要在MySQL中启用缓慢查询日志。 为了启用它,需要在MySQL的配置选项文件(my.cnf)中这样设置: [mysqld] log-slow-queries 12 [mysqld]log-slow-queries 这样会默认将超过10秒的查询记录到MySQL数据目录中的日志文件example.com-slow.log中去...


Mysql中MyISAM和InnoDB两种存储引擎的优化

Mysql中MyISAM和InnoDB两种存储引擎的优化
我们来说一下Mysql中MyISAM和InnoDB两种存储引擎各个参数如何优化。 1.key_buffer_size - 这对MyISAM存储引擎来说非常重要。如果只是使用MyISAM表,可以把它设置为可用内存的 30-40%。合理的值取决于索引大小、数据量以及负载 -- 记住,MyISAM表会使用操作系统的缓存来缓存数据,因此需要留出部分内存给它们,很多情况下数据比索引大多了。尽管如此,需要总是检查是否所有的 key_buffer 都被利用了 -- .MYI...


Mysql中如何查找并删除重复数据

Mysql中如何查找并删除重复数据
考试系统中做了一个用户导入试题功能,导致用户导入了很多重复的试题,我需要查询及删除一下重复的记录,于是有了这篇文章。 (一)单个字段 1、查找表中多余的重复记录,根据(question_title)字段来判断 select * from questions where question_title in (select question_title from people group by question_title having count(question_title) > 1) 2、删除表中多余的重复记录,根据(question_t...


给Mysql查询结果中加入序号字段

给Mysql查询结果中加入序号字段
只要下面简单的一句话即可在mysql中检索结果中加入序号。 SELECT @ROW := @ROW + 1 AS ROW, t.* FROM group_post t, (SELECT @ROW := 0) r 12 SELECT @ROW := @ROW + 1 AS ROW, t.*  FROM group_post t, (SELECT @ROW := 0) r   Mysql中@ROW默认从0开始统计。


Mysql备份压缩及恢复

Mysql备份压缩及恢复
一般情况我们通过mysqldump来备份MySQL数据库,并上传至其它备份机器。如果数据库比较大,在备份传输的时候可能会慢,所以我们尽量让备份的文件小一些。 在写自动备份脚本时,最好把备份结果直接压缩,恢复时也可以直接由压缩备份恢复。下面介绍如何使用bzip2和gzip进行压缩mysql备份文件。 备份并用bzip压缩: mysqldump | bzip2 > outputfile.sql.bz2 从bzip2备份恢复: bunzip2 < outputfile.sql.bz2 | ...


Mysql中如何将时间戳转化为常用格式

Mysql中如何将时间戳转化为常用格式
存储时间戳到Mysql数据库,使用转换函数UNIX_TIMESTAMP。 PgSQL INSERT INTO tbl_name (col1) VALUES(UNIX_TIMESTAMP('2012-11-13 13:54:22')); 1 INSERT INTO tbl_name (col1) VALUES(UNIX_TIMESTAMP('2012-11-13 13:54:22')); 另一个转换函数:FROM_UNIXTIME,就是将时间戳转成常用时间格式 ...


如何让MySQL支持InnoDB存储引擎

如何让MySQL支持InnoDB存储引擎
InnoDb 介绍: InnoDb 存储引擎,支持事务,行锁,外键.InnoDb 设计用来处理大数据量时提供最好的 性能: InnoDb 提供自己的缓存(buffer pool) 还缓存数据和索引.innodb 把数据和索引存放到表空间(tablespace) ,表空间是几个磁盘文件或者是原是设备文件(raw disk). 它不像MyISAM 存储引擎,每个表只是一个文件.(这样在某些系统下最大2G限制). 而Innodb没有此限制,可以无限扩展. Mysql4.0 的以后版本都支持innodb...


CentOS更改MySQL存储目录位置

CentOS更改MySQL存储目录位置
mysql默认的数据文件存储目录为/var/lib/mysql 假如要把目录移到/home/mysqldata下需要进行下面几步: 1、home目录下建立mysqldata目录 cd /home mkdir mysqldata 2、停止mysql进程 mysql -u root -p shutdown 3、把/var/lib/mysql整个目录移到/home/mysqldata mv /var/lib/mysql /home/mysqldata/ 这样MySQL的数据文件就移动到了/home/mysqldata/mysql下 4、找到my.cnf配置文件 如果/etc/目录下没有my.cn...