相关疑难解决方法(0)

如何在不转储所有数据库的情况下缩小 innodb 文件 ibdata1?

InnoDB 将所有表存储在一个大文件中ibdata1

删除大表后,无论表有多大,文件都会保持其大小。如何缩小该文件而不必转储并重新导入整个数据库(总共有数百 GB)?

我认为原因是因为您仍然可以回滚下降。就我而言,我不需要。

mysql innodb memory disk-space

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

建议使用 innodb_file_per_table 吗?

我们有一个应用程序,其中只有一个表将增长到数百万行,而其余的将略低于一百万行。那么我们应该使用 innodb_file_per_table 还是保留一个 .ibd 的建议是什么?我读过一些文章说不要使用它,因为在执行连接时您需要更多磁盘访问权限?为了报告生成目的,我们将在此表和其他表之间进行连接。

mysql innodb

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

配置 innodb_file_per_table 时,ibdata1 呈指数增长

我已经安装了一个带有 InnoDB 的 MySQL 集群(随后启用了 innodb_file_per_table),但是由于我切换到 innodb_file_per_table,文件 ibdata1 增长(每月 2GB)。

我的my.cnf文件是否正确?

为什么我的 ibdata1 这么大(22GB)?

我如何查看 ibdata1 中有什么?

服务器配置:

  • Debian 6 amd64

  • mysql-client-5.1 5.1.61-0+squeeze1

我的 InnoDB 配置文件:

#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
#

innodb_data_home_dir            = /var/lib/mysql
innodb_data_file_path           = ibdata1:10M:autoextend
innodb_log_group_home_dir       = /var/lib/mysql
innodb_file_per_table
innodb_buffer_pool_size         = 5G
innodb_additional_mem_pool_size = 48M
innodb_log_files_in_group       = 3
innodb_log_file_size            = 512M …
Run Code Online (Sandbox Code Playgroud)

mysql innodb ibdata

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

标签 统计

innodb ×3

mysql ×3

disk-space ×1

ibdata ×1

memory ×1