Mysql innoDB 写操作极慢

Xim*_*era 9 mysql innodb performance

我在 MySQL 和 InnoDB 引擎方面遇到了严重的性能问题。即使是最简单的表也会使写入操作(创建表、插入、更新和删除)非常缓慢,如您在以下代码段中所见。

mysql> CREATE TABLE `test` (`id` int(11) not null auto_increment,
   -> PRIMARY KEY(`id`)) ENGINE=InnoDB;
Query OK, 0 rows affected (4.61 sec)

mysql> insert into test values ();
Query OK, 1 row affected (1.92 sec)

mysql> insert into test values ();
Query OK, 1 row affected (0.88 sec)

mysql> insert into test values ();
Query OK, 1 row affected (1.10 sec)

mysql> insert into test values ();
Query OK, 1 row affected (6.27 sec)

mysql> select * from test;
+----+
| id |
+----+
|  1 |
|  2 |
|  3 |
|  4 |
+----+
4 rows in set (0.00 sec)

mysql> delete from test where id = 2;
Query OK, 1 row affected (0.28 sec)

mysql> delete from test where id = 3;
Query OK, 1 row affected (6.37 sec)
Run Code Online (Sandbox Code Playgroud)

我一直在看htop,等待时间长不是因为CPU负载异常。几乎为零,内存使用也正常。如果我使用 MyISAM 引擎创建相同的表,那么它可以正常工作。我的 my.cnf 文件包含以下内容(如果我没记错的话,我没有对默认的 Debian 配置进行任何更改):

[client]
port        = 3306
socket      = /var/run/mysqld/mysqld.sock
[mysqld_safe]
socket      = /var/run/mysqld/mysqld.sock
nice        = 0

[mysqld]
user        = mysql
pid-file    = /var/run/mysqld/mysqld.pid
socket      = /var/run/mysqld/mysqld.sock
port        = 3306
basedir     = /usr
datadir     = /var/lib/mysql
tmpdir      = /tmp
language    = /usr/share/mysql/english
skip-external-locking
bind-address        = 127.0.0.1
key_buffer      = 40M
max_allowed_packet  = 16M
thread_stack        = 128K
thread_cache_size       = 8
myisam-recover         = BACKUP
max_connections        = 100
table_cache            = 64
thread_concurrency     = 10
query_cache_limit   = 1M
query_cache_size        = 40M
log_slow_queries    = /var/log/mysql/mysql-slow.log
long_query_time = 2
log-queries-not-using-indexes
expire_logs_days    = 10
max_binlog_size         = 100M

[mysqldump]
quick
quote-names
max_allowed_packet  = 16M

[isamchk]
key_buffer      = 16M
!includedir /etc/mysql/conf.d/
Run Code Online (Sandbox Code Playgroud)

我也试过重新启动服务器,但它没有解决任何问题。

慢查询日志不提供任何额外信息。

Ric*_*mes 6

尽管如此,时间(1s-6s)还是非常不合理的。即使一切都设置为“错误”,INSERT应该可以预期简单的 0.1 秒。

这是在“云”中运行吗?有其他事情发生吗?