Articles of mysql

清除OOM和连续的mysqld崩溃

我试图摆脱内存不足的问题,似乎是打mysqld服务。 该服务完全随机死亡 – 有时每周一次,有时每两天死一次。 我的VPS有6GB的RAM,没有交换文件(我的提供商不允许/支持交换)。 我的应用程序是基于PHP的( Symfony框架),并在Apache 2.2上运行。 今天晚上,我观察到内存使用率高峰。 令人遗憾的是,我无法捕获一个free -m的确切输出,但我记得-/+ buffers/cache free列的-/+ buffers/cache大约1G。 内存使用量从4.8G上升到了5.2G。 在维护窗口期间,我closures了httpd , mysqld和mongod ,之后我有了下面的free -m输出: [root@XXXYYYZZZ ~]# free -m total used free shared buffers cached Mem: 6144 4916 1227 0 0 1207 -/+ buffers/cache: 3709 2434 Swap: 0 0 0 我的问题是使用内存的3709M是怎么回事? top命令并没有透露太多: top – 19:54:58 up 3 days, 6:35, 2 […]

在哪个端口phpMyAdmin连接到远程数据库

我的centos 7 phpMyAdmin无法连接到远程数据库,因为我认为安全策略不允许它(端口可能被防火墙禁用)。 正如我检查了相同的configuration上的phpMacMadmin它能够连接在config.inc.php相同的条目。 任何人都可以告诉哪个端口phpMyAdmin发送连接远程数据库的请求,以便我可以在centos 7防火墙中启用它。

表列的auto_increment标志不保存备份?

在MySQL-5.1.73上转储数据库并将其加载到MySQL-5.5之后,我注意到,至less有一个表的主键没有传输auto_increment标志…原始describe table的describe table如下所示: +———–+————–+——+—–+———+—————-+ | Field | Type | Null | Key | Default | Extra | +———–+————–+——+—–+———+—————-+ | FIELD_ID | bigint(20) | NO | | 0 | | | ID | bigint(20) | NO | PRI | NULL | auto_increment | | ISSUE_ID | bigint(20) | NO | MUL | 0 | | | […]

加莱拉节点恢复后不会启动

我有一个加莱拉“集群”与一个工作节点。 我添加了第二个节点,并通过rsync启动同步。 国家转移成功了,但是当启动数据库时,它告诉我,innodb应该是中断的。 但据我所知Galera这应该是完全相同的数据,然后在node1上。 这里是日志输出: Feb 19 17:05:53 node2.example.com rsyncd[27285]: connect from node1.example.com (1.2.3.4) Feb 19 17:05:53 node2.example.com rsyncd[27285]: rsync to rsync_sst/ from node1.example.com (1.2.3.4) Feb 19 17:05:53 node2.example.com rsyncd[27285]: receiving file list Feb 19 17:05:53 node2.example.com mysqld[38851]: 2017-02-19 17:05:53 140273959036672 [Note] WSREP: 1.0 (node1): State transfer to 0.0 (node2) complete. Feb 19 17:05:53 node2.example.com […]

来自非可启动系统的Mysql / Mariadb备份

我的工作服务器崩溃,更确切地说,我的硬盘坏了。 从非工作服务器进行备份并在稍后在新安装的服务器上进行恢复的正确方法是什么? 我需要复制/replace的任何一组文件?

强制mysql客户端使用IP通过主机名(从python)?

有没有办法强制一个MySQL客户端更喜欢使用IP地址通过主机名来自我识别到服务器? 我正在运行Python 2.7.12和MySQLdb 1.2.5连接到MySQL服务器,并得到以下错误: django.db.utils.OperationalError: (1130, "Host '<myHostName>' is not allowed to connect to this MySQL server") 当我尝试通过调用mysql -h -p(等)从命令行连接时,它按预期方式工作。 我假设这是因为客户端正在使用IP地址来识别自己的服务器。 (当从服务器检查host myHostName时,myHostName不会从服务器的有利位置parsing为正确的IP) 有无论如何定义或强制使用IP地址? MySQL版本是5.6.31-0ubuntu0.14.04.2-log (Ubuntu) 谢谢。

MySQL:我如何解决mysql崩溃问题?

我有一个1GB内存的Amazon EC2实例。 我收到超过25个活动用户时,我的服务器保持崩溃状态。 我试图用mysqltuner.pl来调优MySQL,并得到以下结果: >> MySQLTuner 1.7.0 – Major Hayden <major@mhtx.net> >> Bug reports, feature requests, and downloads at http://mysqltuner.com/ >> Run with '–help' for additional options and output filtering [–] Skipped version check for MySQLTuner script [OK] Logged in using credentials from debian maintenance account. [OK] Currently running supported MySQL version 10.1.20-MariaDB-1~trusty [OK] Operating […]

如何避免更新Mysql表中的所有行?

有没有办法可以拒绝或避免对Mysql表的所有行进行更新? 背景: 我有一个'OrderID'(Type VARCHAR)和'VendorID'(Type Integer)作为两列的表。 如果我在这个表上运行下面的查询,它只是重置所有行中的VendorID: SET `VendorID` = 0 WHERE `OrderID` = 0 OrderID不应该是0,而是因为系统中的一些错误,它逃脱了所有的检查并造成了严重破坏。 如果OrderID是Integertypes的,这个查询就不会做任何事情。 但是由于OrderID具有字母,因此不能设置为整数types。 Mysql能否以拒绝所有行的更新的方式进行configuration? 如果底层数据库不是Mysql,这个查询的结果会改变吗? 我的环境: nginx / 1.4.6 Codeigniter(2.x)/ Mysql(5.5)/ InnoDB表types 请build议今后如何避免这个问题,谢谢。

MySql:在强大的服务器上,每三天崩溃一次

我的MySQL服务器在Ubuntu 16.x上运行最新版本的MySql,每天都会一次或两次崩溃。 有时它会很快修复(10分钟)。 有时我必须重新启动,并做一个fsck让事情再次运行。 这会造成什么? 到目前为止我尝试过的东西: 将内存从1.5GB提高到了5GB。 硬件升级:母板,处理器,内存(DDR4),但没有帮助(它正在运行一个7岁的处理器,现在运行第七代核心I5)。 设置UFW防火墙,以确保它不是由攻击MySQL或其他服务的机器人造成的。 在my.cnf中,将innodb_buffer_pool_size从128MB更改为500MB。 没有帮助,但仍然到位 我已经运行:mysqlcheck -u root -p –auto-repair –optimize –all-databases多次。 没有帮助 在my.cnf中,将mysql max_connections从151减less到80,然后重新启动mysql。 没有帮助 将apache MaxRequestWorkers从150减less到100. 没有帮助。 仍然崩溃。 我已经有一个1GB的交换文件。 留下它。 通过Apache2日志,SysLog,似乎是合适的,但没有发现任何引起我注意的任何其他日志。 closures服务器并尝试将虚拟机移动到另一个驱动器,但失败并出现文件错误。 我最近的怀疑是这是由一个坏块造成的,但是运行badblocks似乎在25%完成时会引发崩溃。 在fsck期间,我看到这个:fsck critical medium error,dev sda,sector 147306432 这里是一个典型的mysql错误日志: 2017-04-20T18:43:46.958430Z 0 [注] InnoDB:page_cleaner:1000ms预期循环花了11791ms。 这些设置可能不是最佳的。 (在此期间stream感病毒= 92,被驱逐= 0)。 2017-04-20T18:44:11.989905Z 0 [注意] InnoDB:page_cleaner:1000ms打算循环花了6822ms。 这些设置可能不是最佳的。 (在此期间刷新= 8,驱逐= 0)。 2017-04-20T18:44:49.145162Z […]

有没有人有一个快速的方法来“预热”从快照创build的RDS实例

我的理解是,一个新的RDS实例将根据需要从快照中“分页”,如此处所述的EC2卷。 这是目前造成我痛苦:我正在一个新的testing实例上运行一个大的查询; 运行需要10-15分钟,但最后一个小时才能运行。 这个实例具有1,000GB的存储容量,所以3000 IOPS,但是在控制台中我看到<100 IOPS(有时甚至小于20读取IOPS)。 通常我会使用mysqldump进行完整的数据库备份并将其发送到/dev/null – 但需要12-18个小时。 我过去曾经在多个表上做过表扫描查询,希望这些IO能够并行发生。 有谁知道更好的方法来预热音量?