相关疑难解决方法(0)

如何安全地更改 MySQL innodb 变量“innodb_log_file_size”?

所以我对调整 InnoDB 还很陌生。我正在慢慢地将表(在必要时)从 MyIsam 更改为 InnoDB。我在 innodb 中有大约 100MB,所以我将innodb_buffer_pool_size变量增加到 128MB:

mysql> show variables like 'innodb_buffer%';
+-------------------------+-----------+
| Variable_name           | Value     |
+-------------------------+-----------+
| innodb_buffer_pool_size | 134217728 |
+-------------------------+-----------+
1 row in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

当我去更改innodb_log_file_size值时(例如mysql 的 innodb 配置页面my.cnf注释将日志文件大小更改为缓冲区大小的 25%。所以现在我的 my.cnf 看起来像这样:

# innodb
innodb_buffer_pool_size = 128M
innodb_log_file_size = 32M
Run Code Online (Sandbox Code Playgroud)

当我重新启动服务器时,出现此错误:

110216 9:48:41 InnoDB:初始化缓冲池,大小 = 128.0M
110216 9:48:41 InnoDB:缓冲池初始化完成
InnoDB:错误:日志文件 ./ib_logfile0 的大小不同 0 5242880 字节
InnoDB:比指定的.cnf 文件 0 33554432 字节!
110216 9:48:41 [错误] …

mysql innodb myisam logs

113
推荐指数
3
解决办法
21万
查看次数

MySQL 5.5 - Innodb - innodb_log_file_size 大于 4GB 的总和?

在线阅读有关 innodb_log_file_size 时,它说

日志文件的总大小必须小于 4GB

那么如果它需要更大呢?

在书籍和网上,它说将 innodb_log_file_size 设置为至少一个小时的写入值。

目前我有 2 个 1GB 的日志文件,在计算Innodb_os_log_written1 小时时,至少需要 10GB。2GB 的日志文件只能在我们的峰值负载下进行 20 分钟的写入。

蒂亚!

mysql innodb tuning mysql-5.5

5
推荐指数
1
解决办法
2万
查看次数

MySQL / Percona Server 插入性能很差

我正在从 Ubuntu 服务器安装运行 Percona-Server 实例。我正在使用一个需要访问这个数据库的应用程序,它的性能非常差。一旦建立了数据库,应用程序就会进入(安装时)并创建模式。它将所有内容默认为 MyISAM,但是我已将表引擎转换回 InnoDB。我遇到的问题是插入性能非常差。这个应用程序的写入量非常大,似乎它一次将每一行 1 写入磁盘,而不使用任何类型的缓冲区,但是我不确定如何检查或验证这一点。即使从其中一个表中选择(*)也需要 2.4 秒,并且只有 163,000 行。我有点不知所措,我还能做什么。

服务器有 8GB 的​​内存,在发生这种情况时 CPU 几乎完全空闲。

我的.cnf:

[mysql]

# CLIENT #
port                           = 3306
socket                         = /var/run/mysqld/mysqld.sock

[mysqld]

# GENERAL #
user                           = mysql
default_storage_engine         = InnoDB
socket                         = /var/run/mysqld/mysqld.sock
pid_file                       = /var/run/mysqld/mysqld.pid

# MyISAM #
key_buffer_size                = 32M
myisam_recover                 = FORCE,BACKUP

# SAFETY #
max_allowed_packet             = 16M
max_connect_errors             = 1000000
skip_name_resolve
sql_mode                       = STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ONLY_FULL_GROUP_BY
sysdate_is_now                 = 1
innodb                         = FORCE
innodb_strict_mode             = 1

# DATA STORAGE # …
Run Code Online (Sandbox Code Playgroud)

mysql innodb performance percona-server xtradb

3
推荐指数
1
解决办法
8901
查看次数

标签 统计

innodb ×3

mysql ×3

logs ×1

myisam ×1

mysql-5.5 ×1

percona-server ×1

performance ×1

tuning ×1

xtradb ×1