我有一个奇怪的mysql查询速度问题,我正在努力解决这个问题。我将mysql数据库从一台服务器移动到另一台服务器时,本应更加健壮的服务器运行某些mysql查询的速度几乎是原始服务器的4倍。经过几天的调试,我终于发现在存储过程的where子句中使用变量的方式存在巨大的速度差异。下面是一些示例:
快速:
set @s = Concat('delete from visitids where VisitID=''',xVisitID,''' and OrgCode=''',xOrgCode,'''
操作系统为ubuntu 16.04
MySQL版本:MySQL Ver 14.14 Distrib 5.7.19, for Linux (x86_64) using EditLine wrapper
在我的系统中
/etc/mysql/ -> ls
conf.d debian.cnf debian-启动my.cnf my.cnf.fallback mysql.cnf mysql.conf.d
在该文件中,我需要配置以获取通用查询日志和慢查询日志。
我正在尝试自动化mysql转储来自Azure Database for MySQL Server的所有数据库。数据库的当前大小:
mysql> SELECT table_schema "DB Name", Round(Sum(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB"
FROM information_schema.tables GROUP BY table_schema;
+--------------------+---------------+
| DB
我试图让我们的mySQL数据库运行得更快,我分析了我们的慢查询日志,最常见的慢查询是这样的:
CREATE TABLE IF NOT EXISTS `wp_bad_behavior` (
`id` INT(11) NOT NULL auto_increment,
`ip` TEXT NOT NULL,
`date` DATETIME NOT NULL default '0000-00-00 00:00:00',
`request_method` TEXT NOT NULL,
`request_uri` TEXT NOT NULL,
我的一个网站有太多的MySql连接,我在脚本中做了一些性能,并关闭了一些昂贵的查询,以使网站更容易到达。
因为我的处理器列表已经满了100%的查询,所以我认为它将帮助服务器重新启动mysql (再次快速响应)。
/etc/init.d/mysql stop
不,我试着关闭mysql,它说会的。但是10分钟后,命令似乎被冻结了,我没有看到更多的反应。我被ctrl+x退出了,我想再次尝试mysql命令,失败!我也无法启动mysql。
如果您看一下命令“top”,它会给我一些严重的不好的mysql结果。
PID USER PR NI VIRT RES SHR S %CPU %M
我从远程服务器(在线站点)创建备份drupal(7.12)文件和mysql数据库,以便在localhost(xampp)中运行我的站点。
NOTE: my website is in root: www.domain.com and localhost is : localhost/test2
我更改了mysql数据库配置的sites/default/settings.php中的settnigs.php,并将备份mysql导入到新的mysql数据库(本地主机)中。现在我的本地主机加载非常慢,我的网站没有主题,当我用administrator登录,我的管理user/pass无效,不工作。如何解决
What是清理?最安全的方法。
Debian8上没有复制的MySQL服务器5.5.62-0 .
我犯了一个错误,在一个26 on的表上创建了一个新列。SHOW PROCESSLIST显示MySQL将数据复制到100% CPU的tmp表中。
+-----------+------+-----------+--------+---------+------+-------------------+------------------+
| Id | User | Host | db | Command | Time | State | Inf