gio*_*o79 19 mysql innodb mysql-5.5
我在这里遵循这个解决方案/sf/ask/274938331/#comment14041132_4056261并试图增加我innodb_buffer_pool_size
的 4G 和更高的 1G(也是 1024M)除了日志文件大小之外,mysql 不会从这些值开始。如果我把它放回 512M mysql 启动就好了。
我该如何解决这个问题?我的服务器是 16GB 的,根据 Webmin sysinfo:
Real memory 15.62 GB total, 3.13 GB used
Run Code Online (Sandbox Code Playgroud)
同时我也发现了错误日志:
120529 10:29:32 来自 pid 文件/var/run/mysqld/mysqld.pid 的 mysqld_safe mysqld 结束
120529 10:29:33 mysqld_safe 使用 /var/lib/mysql 中的数据库启动 mysqld 守护进程
120529 10:29:33 [注意] 插件“联邦”被禁用。
120529 10:29:33 InnoDB:InnoDB 内存堆被禁用
120529 10:29:33 InnoDB:互斥锁和 rw_locks 使用 GCC 原子内置函数
120529 10:29:33 InnoDB:压缩表使用 zlib 1.2.3
120529 10:29:33 InnoDB:使用 Linux 原生 AIO
120529 10:29:33 InnoDB:初始化缓冲池,大小 = 1.0G
120529 10:29:33 InnoDB:缓冲池初始化完成
InnoDB:错误:日志文件 ./ib_logfile0 的大小不同 0 134217728 字节
InnoDB:比 .cnf 文件中指定的 0 268435456 字节!
Rol*_*DBA 20
@RickJames和@drogart给出的两个答案本质上是补救措施。(每个+1)。
从您提供的错误日志中,最后两行说:
InnoDB:错误:日志文件 ./ib_logfile0 的大小不同 0 134217728 字节
InnoDB:比 .cnf 文件中指定的 0 268435456 字节!`
此时,很明显您将innodb_log_file_size设置为 256M (268435456),my.cnf
而 InnoDB Transaction Logs ( ib_logfile0
, ib_logfile1
) 分别为 128M (134217728)。回顾您问题中指向我的 StackOverflow 答案的链接,您必须执行以下操作:
步骤 01) 将此添加到my.cnf
:
[mysqld]
innodb_buffer_pool_size=4G
innodb_log_file_size=1G
Run Code Online (Sandbox Code Playgroud)
步骤 02) 在操作系统中运行这些命令
mysql -u... -p... -e"SET GLOBAL innodb_fast_shutdown = 1"
service mysql stop
rm -f /var/lib/mysql/ib_logfile*
service mysql start
Run Code Online (Sandbox Code Playgroud)
为了对正在发生的事情有信心,请tail -f
针对错误日志运行。您将看到消息,告诉您何时创建每个 innodb 日志文件。
归档时间: |
|
查看次数: |
49959 次 |
最近记录: |