跳过导航.
首页

mysql

MySQL数据库临时文件究竟储存在哪里

  MySQL使用环境变量TMPDIR的值作为保存临时文件的目录的路径名。如果未设置TMPDIR,MySQL将使用系统的默认值,通常为 /tmp、/var/tmp或/usr/tmp。如果包含临时文件目录的文件系统过小,可对mysqld使用“—tmpdir”选项,在具有足够空间的文 件系统内指定1个目录。

  在MySQL 5.1中,“—tmpdir”选项可被设置为数个路径的列表,以循环方式使用。在Unix平台上,路径用冒号字符“:”隔开,在Windows、 NetWare和OS/2平台上,路径用分号字符“;”隔开。注意,为了有效分布负载,这些路径应位于不同的物理磁盘上,而不是位于相同磁盘的不同分区 中。

  如果MySQL服务器正作为复制从服务器使用,不应将“--tmpdir”设置为指向基于内存的文件系统的目录,或当服务器主机重 启时将清空的目录。对于复制从服务器,需要在机器重启时仍保留一些临时文件,以便能够复制临时表或执行LOAD DATA INFILE操作。如果在服务器重启时丢失了临时文件目录下的文件,复制将失败。

  MySQL会以隐含方式创建所有的临时文件。这样,就 能确保中止mysqld时会删除所有临时文件。使用隐含文件的缺点在于,在临时文件目录所在的位置中,看不到占用了文件系统的大临时文件。

MySQL Proxy 安装与读写分离体验

原作:杨涛(上帝他爸)

一直想等到BETA版出来再试验的,可还是经不住诱惑阿,下午 终于有时间测试一下了。
(本文参考地址:http://blog.chinaunix.net/u/8111/showart.php?id=451420

nagios监控mysql主从复制

作者:田逸(sery@163.com )

起因:nagios可能监控到mysql服务的运行情况,但确不能监控mysql的主从复制是否正常:有时候,同步已经停止,但管理人员却不知道。

下手处:登陆mysql从服务器,通过执行 mysql> show slave status\G 查看其输出,即可判定主从复制是否正常。下面是某个从服务器的输出:
mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event

如何修改mysql数据文件存储位置

很简单。 
FreeBsd主机上的mysql安装的时候数据库文件是放在/var/db/mysql下的, 

在linux主机上的默认存储位置为:/var/lib/mysql/下, 
如果想更换mysql的数据文件的存储位置,则 

freebsd下: 

#ds /usr/local/libexec/mysqld stop(停止mysql) 
#ds mkdir /other/db(建立新的数据文件目录,也可以直接移动过来) 
#ds mv /var/db/mysql /other/db(移动数据文件) 
#ds ln -s /other/db/mysql /var/db/mysql(建立数据文件的软链接) 
#ds /usr/local/libexec/mysqld start(启动mysql) 

OK! 

每天定时自动优化MySQL数据库

通常我们要优化一下 MySQL 数据库,菜鸟就进 phpMyAdmin 一个个点优化
开发PHP的,一般就在网站的程序里通过 php 实现了,但这 2 种方法都不够好
下面告诉你一个绝招,用 mysqlcheck 一条命令搞定,高效又安全

请试下在 putty 里执行下面的语名

mysqlcheck -Aao --auto-repair -u你的用户名 -p你的密码

如果不出意外,你将发现,你所有的数据库都被优化和修复了一次!

转载请注明出处 http://www.21andy.com 版权所有

如果提示 mysqlcheck 找不到呢, 如果不是,请跳过这步。
找不到 mysqlcheck 的原因一般是手动编译安装的,像我一样,就 locate mysqlcheck 一下,发现在 /usr/local/mysql/bin/ 下面,就是我安装MySQL时指定的路径
,OK,给他加个快捷方式

百万级高并发网站MySQL应用攻略

百万级高并发网站MySQL应用攻略

作者: 未知

  在长时间的网站开发过程中,能作一个百万IP的网站对我来说真是一个新的挑战,由于本人的水平有限,所以一直就职于一个小公司,在这里也只是抱 着重在参与的想法。在以后我所讲述到的内容知识点上如有不适之处请大家多多批评指教。

  在一开始接触PHP接触MYSQL的时候就听不少人说:“Mysql就跑跑一天几十万IP的小站还可以,要是几百万IP就不行了”,原话不记得 了,大体就是这个意思。一直也没有好的机会去验证这个说法,一是从没有接手过这么大流量的网站,二是平时工作也比较忙,懒得去管这些,反正现在用不着,抱 着这个想法把这个问题一直留到了最近,才把这个问题搞明白。

  就在前几天公司旗下一网站(由于这是公司的商业内容我就不说是那个网站了,免得有兄弟说是AD)以下简称A站,这A站在年后流量猛增从一天的七 八十万猛跑到了好几百万的IP,一天下来接近一千万的Pv让整个服务器在高压下超负荷的工作着,时不时的服务就出现当机。

  最首先反映出情况的是数据统计,一天下来一个数据也没有统计上,原来是mysql挂了。

  本文就围绕这个问题来讲讲我们公司几个技术人员的解决方案。

Ubuntu Server 下开启远程连接 MySQL

http://blog.csdn.net/afeilxc/archive/2009/09/07/4528201.aspx

Mysql InnoDB数据表恢复方法

原因:技术员是通过复制直接copy数据库文件到另一服务器上的。MyISAM格式的表支持直接copy,但是Innodb表不支持。
庆幸的是ibdata1数据文件还在,数据库名目录下的.frm文件也在。注意:InnoDB表数据一般是存贮在ibdata1这个文件当中,位于C:\Program Files\MySQL Server 5.0\data目录下。

我今天的恢复方法:
1、在另一个电脑上安装一下相同版本的mysql服务器。因为我的数据字符集是gbk,安装mysql的时候选的也是gbk。
2、cmd下:net stop mysql //停止mysql服务。
3、把原来备份好的ibdata1文件拷贝到mysql安装位置的data目录。把原来的数据库目录(如qcmood)也copy到data目录下。
4、把data目录下的ib_logfile0,ib_logfile1这两个文件删除,不然不能重新启动mysql。
5、cmd下:net start mysql //开启mysql服务,然后用mysql的命令行就可以查看恢复的数据了。

IIS6配置的PHP环境不支持Mysql的解决方法

真的很郁闷,按照以前配置方法配置IIS6:

1. 把php.ini复制到Windows目录,并更改extension目录位置为php目录的位置,并加载相应的dll;

2. 把IIS6添加.php的处理器;在扩展中允许.php;重启IIS。

按说这样的设置已经可以,看了phpinfo,发现所有的模块都支持了,唯独不支持Mysql。这我可就郁闷了,以前都是没有问题的啊。没有办法,上网搜搜,结果发现还要把libmysql.dll复制到System32下,记录一下。

参考:http://blog.samxy.com/post/2009/05/54.html

通过MYSQL批量替换字段内容的命令

update 表名 set 字段名=replace(字段名,'原来的内容','替换后的内容')

 

同步内容