Articles of mysql

MySQL失去了连接到本地MySQL服务器

我试图对存储在大型MySQL数据库中的数据进行一些分析。 我有两个表分别有130mio和600'000条目,我想要运行以下查询: select hashes.hash, hashes.hash LIKE 'block%' as block, min(timestamp) as min, max(timestamp) as max, max(timestamp)-min(timestamp) as diff from timings left join hashes on (id=timings.hash) group by timings.hash 但经过一段随机的时间(在1到18分钟之间变化),我得到以下几点: $ time mysql timings -e "<query>" > diff2.tsv ERROR 2013 (HY000) at line 1: Lost connection to MySQL server during query real 7m34.158s user 0m0.004s sys […]

MySQL插入失败的静默/无效的ID(硬件故障?)

我们只是遇到了一个奇怪的故障,MySQL成功插入数据,但是它插入的行并没有真正保存,插入的ID是大约20条logging之前插入的行(按照我们的速率转换为大约20分钟)。 1)我们的应用程序处理一个请求并插入一堆logging。 在这个过程中没有发生错误。 在这里有一些插入,通过FK连接8或9。 在每个请求结束时,我们发送一封电子邮件报告,其中包含有关请求的信息,如插入的ID。 2)我收到了这些电子邮件报告之一,并通过查找ID来检查它。 ID是在20分钟前插入完全不同的logging。 我冲刷数据库和“真正的”新行似乎并没有在那里,或任何有关的表。 3)在我决定在黑暗中拍摄并重新启动MySQL之前,这发生了大约8次。 下一个请求和一切以来,一切正常 – 显然这个问题已经解决了。 所以我的问题是什么可能导致这个,我怎么检查证据可能的错误? 我猜想某种硬件故障,但有什么方法可以确认吗? MySQL版本:5.1.62-0ubuntu0.10.04.1-log

mysql不会在Fedora中启动,没有错误日志

我有一个魔鬼的时间试图让MySQL启动Fedora的安装。 每当我尝试启动它,我会得到: [root@server1 log]# service mysqld start Redirecting to /bin/systemctl start mysqld.service Job failed. See system logs and 'systemctl status' for details. 然后当我做一个systemctl查询时,我得到: [root@server1 log]# systemctl status mysqld.service mysqld.service – MySQL database server Loaded: loaded (/lib/systemd/system/mysqld.service; enabled) Active: failed since Sat, 18 Aug 2012 21:06:48 -0400; 1min 59s ago Process: 747 ExecStartPre=/usr/libexec/mysqld-prepare-db-dir (code=exited, status=254) CGroup: […]

在AWS上设置MySQL集群

我有一个目前依赖于MySQL的Web应用程序。 我现在在AWS上运行(使用股票RDS),每秒可以容纳大约500个请求(使用INSERT和SELECTS的50/50混合),并在1秒钟内响应。 但是,我担心这个数字是否会增加到1000,RDS根本无法跟上,响应时间会增加。 为了减less这种情况,我创build了“只读副本”来执行读取以减less“主”服务器上的负载。 不过,我想知道是否值得我build立自己的MySQL集群。 这会给我真正的缩放“出”吗? 当我的MySQL集群正在忙碌等时,我可以简单地启动更多的节点吗? 它会不需要“只读副本”? 有没有人在AWS上有这方面的经验? 在此先感谢您的任何build议!

PHP偶尔无法连接到MySQL服务器

我有我的客户端应用程序调用我的服务器上的一个PHP脚本logging一些信息到远程MySQL服务器。 脚本工作正常,但偶尔(只偶尔)脚本无法连接。 当连接失败时,我设置了脚本来向我发送错误邮件,并从mysql_error()中得到以下错误: Unknown MySQL server host '[myDBhostaddress]' (2) 当然,[myDBhostaddress]是我的db主机的正确地址。 对于大多数时间脚本工作,因此我不认为地址或login凭据是错误的。 我试图重现这个问题,但没有运气。 我可以从我的本地机器(我的服务器)login到我的mysql服务器。 从命令行连接工程,testingPHP脚本工程,手动调用发送给我错误邮件的脚本也工作! 现在我对这个问题感到困惑,因为我不知道如何处理这个问题。 我甚至不知道问题的原因。 会不会是MySQL服务器重载? 这是入侵者的攻击吗? 如果有帮助,我的PHP脚本生活在亚马逊的EC2和亚马逊的RDS的MySQL服务器。

mysql表版本的区别

我有一个名为bla的mysql表(MyISAM)。 版本是9(mysql4)使用mysql5服务器我做了一个alter table(添加列,删除同一列)。 这是升级表版本的一个简单的技巧。 如mysql所示: $ echo“显示来自mydb的表格状态,如'bla'\ G”| mysql -p | grep版本 input密码: 版本:10 通常,unix文件命令会给出相同的结果,即另一个“更改”表: 文件bla_ok.frm bla_ok.frm:MySQL表定义文件版本10 但对于一些“改变”的表(如bla),文件命令仍然给出版本9,而上面的mysql命令给出版本10 文件bla.frm: bla.frm:MySQL表定义文件版本9 有人有线索?

带有DRBD / Pacemaker / Corosync 2节点群集的STONITH

所以我在使用STONITH和双节点DRBD / Pacemaker / Corosync集群来复制MySQL数据时看到了很多冲突的观点。 我可以在Pacemaker网站find的例子似乎closures了,但很多其他地方说,你应该保持它…..我的设置将是2个节点与2个接口,一个物理连接到另一台机器,另一个连接到一个开关。 在这种情况下,如果我有冗余的通信是STONITH必要的? 如果一台服务器失去了两个networking连接,它将不会收到任何MySQL数据,当它恢复时,我打算将粘性设置为无限,所以它(不应该)不会成为主人。 在这种情况下,STONITH是必要的还是可取的?

任何将MySQL复制到远程服务器的缺陷

是否有任何陷阱或陷阱复制(主 – 从)MySQL数据库到远程服务器大约100ms ping?

自动重新连接到ODBC源?

我正在使用Asterisk 1.8.10.1和通过ODBC连接的MySQL数据库来存储CDR。 当Asterisk启动或Asterisk运行中断时,我的MySQL数据库不可用时,我希望Asterisk重试连接到数据库,但这不会发生! 任何人都知道在哪里我可以启用一些自动重新连接到Asterisk的数据库? 我的res_odbc.conf如下所示: [asterisk] enabled => yes dsn => asterisk-connector username => user password => pass pre-connect => yes pooling => no limit => 1 idlecheck => 1 negative_connection_cache => 1

服务器崩溃后Mysql innoDB损坏

昨天我的服务器因数据中心中断而死亡。 今天它已经恢复,但有一些与MySQL的问题。 首先,我的MySQL服务器无法启动。 出于这个原因,我删除了/ var / lib / mysql文件夹中的文件ib_logfile0和ib_logfile1 ( 我仍旧有失败的文件 )。 在此之后,我的服务器能够再次启动。 但是现在我在mysql日志文件中看到了很多问题。 Sep 1 09:43:55 * mysqld: 120901 9:43:55 InnoDB: Error: page 70944 log sequence number 8 1483471899 Sep 1 09:43:55 * mysqld: InnoDB: is in the future! Current system log sequence number 5 612394935. Sep 1 09:43:55 * mysqld: InnoDB: Your database […]