解决Mysql在使用innobackupex无法备份数据库一次问题
2016-08-19 10:03
821 查看
环境:Linux6.5 Mysql 5.6
有一次在检查数据库备份文件时,发现没有产生备份文件,觉得奇怪,原来每天都是正常的在跑备份,突然一下就备份失败了,检查备份输出的日志,出现以下错误。
Using server version 5.7.9
innobackupex version 2.4.3 based on MySQL server 5.7.11 Linux (x86_64) (revision id: 6a46905)
xtrabackup: uses posix_fadvise().
xtrabackup: cd to /home/mysql/data
xtrabackup: open files limit requested 0, set to 1024
xtrabackup: using the following InnoDB configuration:
xtrabackup: innodb_data_home_dir = .
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = .
xtrabackup: innodb_log_files_in_group = 2
xtrabackup: innodb_log_file_size = 50331648
InnoDB: Number of pools: 1
160818 11:08:32 >> log scanned up to (528047742096)
xtrabackup: Generating a list of tablespaces
InnoDB: Allocated tablespace ID 3677 for dbmycat10/RODS, old maximum was 0
160818 11:08:33 >> log scanned up to (528047742803)
160818 11:08:34 >> log scanned up to (528047743055)
160818 11:08:35 >> log scanned up to (528047744302)
160818 11:08:36 >> log scanned up to (528047744302)
160818 11:08:37 >> log scanned up to (528047744446)
160818 11:08:38 >> log scanned up to (528047744833)
160818 11:08:39 >> log scanned up to (528047747274)
160818 11:08:40 >> log scanned up to (528047748319)
160818 11:08:41 >> log scanned up to (528047748319)
160818 11:08:42 >> log scanned up to (528047750023)
160818 11:08:43 >> log scanned up to (528047750511)
160818 11:08:44 >> log scanned up to (528047750511)
160818 11:08:45 >> log scanned up to (528047750970)
160818 11:08:46 >> log scanned up to (528047750970)
160818 11:08:47 >> log scanned up to (528047752614)
160818 11:08:48 >> log scanned up to (528047752871)
InnoDB: Operating system error number 24 in a file operation.
InnoDB: Error number 24 means 'Too many open files'
InnoDB: Some operating system error numbers are described at http://dev.mysql.com/doc/refman/5.7/en/operating-system-error-codes.html
InnoDB: File ./ABC/XX.ibd: 'open' returned OS error 124. Cannot continue operation
InnoDB: Cannot continue operation.
[mysql@xdatabase01 FullBak]$
这里主要错误信息为Error number 24 means 'Too many open files',无法打开更多的文件。这里是指mysql进程超出了打开最多的文件数量,检查下数据文件data目录下的文件总数。
[mysql@database01~] find data -type f|wc -l
2584
这里是2584个
登录mysql数据库
mysql>show variables like '%open_files%';
innodb_open_files 2000
这里innodb_open_files 的意思如下:
innodb_open_files
作用:限制Innodb能打开的表的数据。
设置的是2000,但是data下已经有2584个了,因此报无法打开更多的文件数,现在需要重新加大一下,修改my.cnf文件,设置innodb_open_files=5000,这个根据自己的一个业务需求来设定。
设置完后,需要重启数据库才能生效。然后重新跑备份脚本,可以正常备份
有一次在检查数据库备份文件时,发现没有产生备份文件,觉得奇怪,原来每天都是正常的在跑备份,突然一下就备份失败了,检查备份输出的日志,出现以下错误。
Using server version 5.7.9
innobackupex version 2.4.3 based on MySQL server 5.7.11 Linux (x86_64) (revision id: 6a46905)
xtrabackup: uses posix_fadvise().
xtrabackup: cd to /home/mysql/data
xtrabackup: open files limit requested 0, set to 1024
xtrabackup: using the following InnoDB configuration:
xtrabackup: innodb_data_home_dir = .
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = .
xtrabackup: innodb_log_files_in_group = 2
xtrabackup: innodb_log_file_size = 50331648
InnoDB: Number of pools: 1
160818 11:08:32 >> log scanned up to (528047742096)
xtrabackup: Generating a list of tablespaces
InnoDB: Allocated tablespace ID 3677 for dbmycat10/RODS, old maximum was 0
160818 11:08:33 >> log scanned up to (528047742803)
160818 11:08:34 >> log scanned up to (528047743055)
160818 11:08:35 >> log scanned up to (528047744302)
160818 11:08:36 >> log scanned up to (528047744302)
160818 11:08:37 >> log scanned up to (528047744446)
160818 11:08:38 >> log scanned up to (528047744833)
160818 11:08:39 >> log scanned up to (528047747274)
160818 11:08:40 >> log scanned up to (528047748319)
160818 11:08:41 >> log scanned up to (528047748319)
160818 11:08:42 >> log scanned up to (528047750023)
160818 11:08:43 >> log scanned up to (528047750511)
160818 11:08:44 >> log scanned up to (528047750511)
160818 11:08:45 >> log scanned up to (528047750970)
160818 11:08:46 >> log scanned up to (528047750970)
160818 11:08:47 >> log scanned up to (528047752614)
160818 11:08:48 >> log scanned up to (528047752871)
InnoDB: Operating system error number 24 in a file operation.
InnoDB: Error number 24 means 'Too many open files'
InnoDB: Some operating system error numbers are described at http://dev.mysql.com/doc/refman/5.7/en/operating-system-error-codes.html
InnoDB: File ./ABC/XX.ibd: 'open' returned OS error 124. Cannot continue operation
InnoDB: Cannot continue operation.
[mysql@xdatabase01 FullBak]$
这里主要错误信息为Error number 24 means 'Too many open files',无法打开更多的文件。这里是指mysql进程超出了打开最多的文件数量,检查下数据文件data目录下的文件总数。
[mysql@database01~] find data -type f|wc -l
2584
这里是2584个
登录mysql数据库
mysql>show variables like '%open_files%';
innodb_open_files 2000
这里innodb_open_files 的意思如下:
innodb_open_files
作用:限制Innodb能打开的表的数据。
设置的是2000,但是data下已经有2584个了,因此报无法打开更多的文件数,现在需要重新加大一下,修改my.cnf文件,设置innodb_open_files=5000,这个根据自己的一个业务需求来设定。
设置完后,需要重启数据库才能生效。然后重新跑备份脚本,可以正常备份
相关文章推荐
- 解决使用ASP无法连接 ORACLE 9i 数据库的问题。
- Mac os 解决无法使用localhost连接mysql问题
- linux下mysql 使用mysql -uroot -p输入密码无法登录问题的解决
- 解决windows下的mysql匿名登陆无法使用mysql数据库的问题
- 使用innodb_force_recovery解决MySQL崩溃无法重启问题
- 解决windows下的mysql匿名登陆无法使用mysql数据库的问题
- 使用innodb_force_recovery解决MySQL崩溃无法重启问题
- 解决MySQL导入备份文件到新数据库乱码问题
- linux下mysql 使用mysql -uroot -p输入密码无法登录问题的解决
- 【MySQL】解决windows下mysql匿名登陆无法使用mysql数据库的问题
- sqlserver"无法删除数据库,因为该数据库当前正在使用"问题解决
- 关于在英创em9161板上使用ADO.net连接远程数据库提示 “无法找到 PInvoke dll"dbnetlib.dll"”问题解决方法
- MySQl使用-------如何修改root密码&&解决本地无法登录问题
- mysql出现权限问题无法创建新数据库&启动mysql失败问题,问题解决
- 关于mysql导出数据库后,再进行还原时,视图无法使用的问题,请各位大神帮忙出招
- 解决MYSQL访问时无法切换数据库的问题.Reading table information for completion of table and column names
- Mac os 解决无法使用localhost连接mysql问题
- 解决windows下的mysql匿名登陆无法使用mysql数据库的问题
- Unity3D在Android平台使用嵌入式数据库Sqlite,解决无法找到数据库文件的问题
- 使用innobackupex备份mysql遇到的问题