Articles of mysql

Mysqldump在备份过程中停止网站服务

我有一个运行在MySQL数据库后端上的网站,每天通过以下命令进行备份: mysqldump -h server.com -uuser -ppass database > /home/directory/backup`date +"%Y%m%d"`.sql 我注意到,由于数据库已经变大,备份需要更长的时间(也许几分钟),在备份过程中,站点不能正常工作。 在备份期间需要挂载备份数据库的页面挂起,并且在备份完成之前无法加载。 通常他们似乎没有超时,直到备份完成后,MySql超时30秒的错误 – 即使超过30秒过去了。 我猜mysqldump命令是locking对数据库某些部分的访问,并阻止来自web服务器的客户端连接,但无法find更多关于此的信息。 我在服务器上运行mysql 5,表格是ISAM格式。

在这个MySQL服务器上有多less个数据库?

我需要了解我的服务器上有多less个数据库。 应该是一个简单的查询,对不对?

如何pipe理超过200万条logging的MySQL表

我在CentOS中有一个在MySQL 5.0.45上运行的InnoDB表。 更糟糕的是,它们都在虚拟机中运行。 有多个表格有很容易超过200万条logging的概率。 我注意到,从900K到1M纪录大关开始DB性能开始下降。 我有足够的权力来为未来作出一切改变,以便在这种情况下尽可能地保持这一点。 我应该使用MyIsam? 只有less数指标,我最担心的是写好performance。 将数据写入表的程序以每个表大约250个请求为一组进行批处理,并以每个表为基础执行它们以帮助解决问题。 我已经包含了一个较大的表的create table语句,是的,这是一个非常宽的表 – 我明白了。 我试图尽可能缩小列数,同时仍然能够可靠地容纳进入的数据。 编辑: 如果程序在运行过程中碰到了风扇,程序确实会使用事务来回滚这些变化,但是它基本上只是将数据抽入数据库的风格。 一个8小时的运行可以很容易地把400K线放在这个EACH表中。 这个表格是25个相似大小的指标之一。 它们全部通过LINE和RUN_ID进行查询。 阅读performance – 我不是特别担心。 我正在尽可能快地写入。 CREATE TABLE IF NOT EXISTS `TMD_INDATA_INVOICE` ( `ID` int(11) NOT NULL auto_increment, `LINE` int(11) NOT NULL, `RUN_ID` int(11) NOT NULL, `INDATA_INVOICE_ALLOCATION_GROUP_NAME` varchar(128) default NULL, `INDATA_INVOICE_ALLOCATION_GROUP_OWNER` varchar(128) default NULL, `INDATA_INVOICE_ALLOCATION_NAME` varchar(128) default NULL, […]

切换主机 – MySQL变慢了10倍

我最近转换了networking托pipe。 新盒子比旧盒子要慢(这是VPS vs.专用)。 然而,性能testing报告说,很大一部分放缓是数据库驱动的。 我有一个参考操作。 在旧的主机上,平均运行时间为2.2秒,数据库访问时间为0.2秒。 在新的一个,平均18秒,数据库时间14秒。 服务器是相同的 – 在这两种情况下,它都是本地MySQL v。5.0.91社区。 通过Unix套接字连接。 什么可以解释这种差异? 我应该看什么服务器设置?

奇怪的MySQL僵尸任务

在我看来,似乎在我的服务器上运行的SQL总是有1个任务,而我的个人资料会“卡住”并且一直运行。 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 890 mysql 20 0 326m 54m 7704 S 9999 1.4 13:05.03 mysqld 有没有一种方法,我可以安装一个机器人来find这样的东西,closures它,并重新启动MySQL,所以我不需要手动做? 更新 我应该指出,它并不总是保持在9999%的CPU。 有时它显示1.4或类似的东西

在生产服务器上由MySQL 5.5RC烧毁的任何人?

我一直在考虑升级到我们的Ubuntu生产服务器上的MySQL 5.5。 由于它已经是RC了,我们不会过分强调我们的服务器,所以我不希望有任何问题。 但是,知道是否已经有人尝试过了,并且不得不恢复到5.1–为什么呢?

MySQL上的VMware非常慢

我有Windows 7,VMware Worstation 7和Ubuntu Hardy 8.04客户端(我试过64位客户端和32)。 我已经在Apache下的主机上运行phpmyadmin。 我已经改变了config.inc.php来添加多个主机,这样我就可以访问在VMware Ubuntu Hardy客户端上运行的MySQL实例。 这是非常缓慢的。 从一个表切换到另一个表需要13秒。 我已经尝试了运行不同MySQL实例的Ubuntu的不同实例。 我已经分配了512 MB,并尝试了1 GB的内存。 顶部说这个系统什么都不做。 同样的问题。 我尝试从NAT更改为主机networking桥接networking。 他们都工作,但他们都一样慢。 我看到有人说他们在/etc/hostname和/etc/hosts有不匹配的名字,所以我检查了它们。 我使用主机名访问主机: taer12 我在主机名和/etc/hosts都有。 顶部 – 15:52:55最多30分钟,2个用户,平均负载:0.00,0.00,0.00 任务:55总计,1跑步,54睡觉,0停止,0僵尸 Cpu(s):0.0%us,0.0%sy,0.0%ni,100.0%id,0.0%wa,0.0%hi,0.0%si,0.0%st Mem:总共515432k,使用110748k,404684k空闲,4980k缓冲 交换:共915664k,使用0k,915664k免费,64720kcaching 有没有人有任何其他的想法?

是什么原因造成缓慢的SSH连接和本地服务器上的MySQL连接速度慢?

当我尝试通过SSH从局域网中的客户端PC(Windows 7 + putty:192.168.53.X)连接到我们的服务器(Ubuntu服务器192.168.53.1)时,存在巨大的延迟。 显示密码提示需要一分钟时间。 当我尝试连接到在同一台服务器上运行的mySQL数据库时,也有巨大的延迟。 这台服务器也运行SAMBA,但是运行非常stream畅。 在这里你可以find我们的networking图: 链接文本 任何帮助,将不胜感激。

InnoDB的IO问题,需要评估的评估

TL; DR – 与InnoDB有一些基于IO的问题。 在我签署表格以申请更多硬件之前,请先看看是否同意我的评估 为一个客户端工作,我inheritance了一个大的InnoDB MySQL数据库服务器。 根据Information_Schema,所有表(大约180个模式)的数据大小约为34.9GB,总大小约为38GB。 它位于运行心跳和DRBD(主动/被动)的Xen DomU(Debian)上,通过gigibit交叉同步data_dir分区并提供故障转移。 注:Web服务器,caching服务器和数据库服务器都是位于两台服务器上的Xen虚拟服务器,以实现冗余和故障转移。 总数据大小由存储在数据库中的大约25GB BLOB数据(图像,video,file upload等)组成,以允许多个前端Web服务器将这些文件caching在其本地文件系统上。 这些服务器上的caching大概平均每周刷新10次。 其余的数据(大约9GB)是经常更新的实际内容。 在前端有多个Web服务器,还有坐在它们前面的静态文件caching。 networking服务器仍然每天大约有50万次点击。 Web服务器只有在数据库在IO上等待时才被加载,并且在这种情况发生之前似乎能够处理大量的查询和连接。 该应用程序是一个名为eZ Publish的基于PHP的CMS。 我们在这个设置中托pipe了大约90个站点。 InnoTop每天显示约4000万个查询。 平均大约500 qps。 数据库服务器有2个CPU,一个很less使用,运行32Bit内核,并有2GB的内存。 InnoDB缓冲池已经分配了512MB。 我知道这并不多。 服务器没有更多的免费。 根据下面的输出和阅读在线博客和本书,我得出结论,服务器严重缺乏资源,如果我们有足够的内存来存储经常访问的9GB数据(如果不是所有的35GB的数据)和/或至less10GB光纤通道复制更快的磁盘。 这个评估看起来是否准确? 有什么设置可以在这里改变,可以带来任何性能上的好处吗? 〜$ vmstat 1 10 procs ———–memory———- —swap– —–io—- -system– —-cpu—- rb swpd free buff cache si so bi bo in cs us sy […]

减lessCentOS上的MySQL RAM使用量

我有一个与CentOS 5(32位)的VPS,它有256MB的内存,虽然没有多less对我来说就够了。 闲置2 ssh连接活动和httpd运行它使用大约40MB的内存,但一旦我启动MySQL它射击高达220MB! 有什么方法来优化RAM的使用? 我只是在做一些简单的开发工作。 干杯:)