我是一名网站开发人员,服务器管理员告诉我mysql数据库上存在争用问题。我想亲自调查这些争用问题,看看它们是什么,但我不知道如何或在哪里寻找争用问题。请告诉我去哪里找好吗?我需要查看日志吗?如果是这样的话,日志是什么?在哪里可以找到它们?数据库是运行在MySQL上的LinuxV5.1。我还不确定什么版本,因为我还没有控制面板或ssh访问,但我的目标是今天得到它。
非常感谢
发布于 2014-01-15 00:19:55
争用问题通常是一种奇特的方式,表示存在锁定问题,这意味着查询处于锁定状态。你需要识别它们,并检查你的应用程序中的解决方案。
您可以在服务器繁忙时运行SHOW PROCESSLIST,以查看当前锁定了哪些查询。
SHOW OPEN TABLES还可以帮助您识别问题和another question posted here
发布于 2014-01-15 00:31:24
首先,您应该使用下面的命令检查mysql是否正在运行。
mysqladmin -u root -p status此命令将显示:-
Enter password:
Uptime: 4 Threads: 1 Questions: 62 Slow queries: 0 Opens: 51 Flush tables: 1 Open tables: 60 Queries per second avg: 15.200还要检查错误类型:-
http://dev.mysql.com/doc/refman/5.5/en/privilege-system.html
发布于 2014-01-15 00:44:32
也许你应该先问问你的服务器管理员,他/她看到了什么让他/她相信存在争用问题-他们对你的DBMS的看法比我们好得多。听起来你是为这项服务付钱给他们的。
如果您说了表存储在哪个数据库引擎中,这会很有帮助:这是迄今为止MySQL中最关键的争用问题。您可以通过从MyISAM切换到Innodb来解决您的问题。
我没有控制面板或ssh访问权限
IME现成的控制面板适用于(非常)基本的管理任务,但对此用处不大。
我将从查看缓慢的查询日志开始。这应该被配置为记录所有查询-如果它不是告诉管理员您需要更改它。查看哪些查询具有较高的锁定时间,然后确定导致较高锁定时间的lonf执行查询。那就修好它们。
https://stackoverflow.com/questions/21117927
复制相似问题