标签: ibdata

从 ibd 文件中没有 ibdata1 的数据文件夹中恢复 MySQL 数据库

我的 WAMP 目录不小心被另一个用户删除了。MySQL 中只有数据文件夹可用。并且,只有数据库文件夹(“\bin\mysql\mysql5.6.12\data\”中带有数据库名称的文件夹)可用。“\bin\mysql\mysql5.6.12\data\”根目录下包括“ ibdata1 ”在内的所有文件也被删除。

数据库文件夹仅包含以下扩展名的文件。

*.frm,*.ibd

和“db.opt”文件。

如何恢复数据库?

我已经尝试恢复 bdata1。但是,无法收回。而且,一些数据库也包含 MYISAM。

mysql innodb recovery ibdata wamp

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

即使设置了 innodb_file_per_table,Innodb ibdata1 文件如何增长 5 倍?

我设置了 innodb_file_per_table 并且就在今天,在我对 800M 表进行了几次更改以将其减少到大约 600M 之后,我的 ibdata1 文件从 59M 跳到了 323M。该特定表的 .ibd 文件减少了,但服务器的 ibdata1 文件变得疯狂。有任何想法吗?

mysql innodb ibdata

7
推荐指数
1
解决办法
3052
查看次数

Ibdata 用法和建议?

我有一个生产服务器

2011年11月5日ibdata大小为100G。大约3个月就增加到200G,所以它的大小刚刚增加了一倍。所以它是一个巨大的数据。目前lvm是251G。

我几乎所有的表都带有 Innodb。我没有在每个表中使用 innodb。我在lvm上有我的idbata。所以我应该增加多少以备将来使用..?

或任何其他处理场景的最佳方式。

mysql innodb ibdata

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

如何防止“ibdata 文件与日志序列号不匹配”?

我正在处理一组非常大的数据库,这些数据库都是 innodb。

为了我的舒适,我在 mysql restart 上多次提到这个:

ibdata files do not match the log sequence number

但是,当该消息发生时,我已经清楚地看到 mysql 在重新启动之前正确关闭。

然后它“修复”到原始序列号,没有丢失任何东西。

永久处理和修复此问题的最佳方法是什么?

使用 Percona innodb_file_per_table=1

示例日志:

InnoDB: Initializing buffer pool, size = 80.0G
InnoDB: Completed initialization of buffer pool
InnoDB: Highest supported file format is Barracuda.
InnoDB: The log sequence numbers 475575972691 and 475575972691 in ibdata files do not match the log sequence number 925369860131 in the ib_logfiles!
InnoDB: Database was not shutdown normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information …
Run Code Online (Sandbox Code Playgroud)

mysql innodb percona ibdata

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

主动/被动拓扑中原始设备上的 MySQL InnoDB

我们有一个主动/被动拓扑,其中有两个共享原始存储的 x86 复合体,其中在给定时刻只有一个节点可以访问共享存储(也称为主动节点)。如果主动节点发生故障转移,被动节点将启动接管并成为可以访问共享存储的主动节点。每个节点都有自己的带有文件系统的引导设备存储。但是,共享存储上不能安装文件系统。

我们有兴趣在两个节点上安装 MySQL,它的数据驻留在共享存储中,只有活动节点运行服务器。

带有 InnoDB 的 MySQL 能够在原始设备上运行,并且还有关于如何在类似于我们的拓扑的集群上运行MySQL的指南。但是,在第二个示例中,它们确实在共享存储上安装了一个文件系统。文件系统问题引起了一个主要问题:

ib_logfile* 仍然需要一个文件系统。所以原始的 MySQL 功能并不完全是原始的。如果我错了,请纠正我。是否有将这些文件存储在原始存储中的解决方法?我们可以将重做日志 ( ib_logfile0, ib_logfile1)保存在节点的引导设备中,并始终在服务器启动之前删除这些文件(因此在多次故障转移的情况下我们不会有旧的日志文件)。但是,这可能会导致未提交的事务在事务中间失败的情况下被部分提交,从而与事务的整体思想相矛盾。

在此拓扑中,是否还有其他文件/功能可能会影响 mysql 的行为?

mysql innodb failover ibdata

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

MySql - 清理 ibdata1

我有一个数据库,其整个大小约为 44GB,其中 ibdata1 约为 35GB。这没有意义,因为数据的大小不应超过 10GB。

我使用以下查询来估计数据大小:

    SELECT CONCAT(table_schema, '.', table_name),
       CONCAT(ROUND(table_rows / 1000000, 2), 'M')                                    rows,
       CONCAT(ROUND(data_length / ( 1024 * 1024 * 1024 ), 2), 'G')                    DATA,
       CONCAT(ROUND(index_length / ( 1024 * 1024 * 1024 ), 2), 'G')                   idx,
       CONCAT(ROUND(( data_length + index_length ) / ( 1024 * 1024 * 1024 ), 2), 'G') total_size,
       ROUND(index_length / data_length, 2)                                           idxfrac
FROM   information_schema.TABLES
ORDER  BY data_length + index_length DESC
LIMIT  30;
Run Code Online (Sandbox Code Playgroud)

任何想法如何清理 ibdata1 以及它为什么增长这么多?

顺便说一句,我使用 innodb_file_per_table

mysql innodb ibdata

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

配置 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万
查看次数

MariaDB:如何减小 ibdata 文件大小

我发现我的MariaDB的ibdata文件不断增加。所以,我搜索了这个,发现innodb_file_per_table应该设置为1。但是,我的DBMS的配置已经设置为1;

为什么 ibdata 文件大小不断增加以及我还应该为此做什么。

以下是我的 dbms 信息。

DBMS: MariaDB
engine: InnoDB Engine
version: 10.3

** my.cnf **
innodb_file_per_table=ON
transaction-isolation=READ-COMMITTED
Run Code Online (Sandbox Code Playgroud)

mysql innodb mariadb ibdata

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

标签 统计

ibdata ×8

innodb ×8

mysql ×8

failover ×1

mariadb ×1

percona ×1

recovery ×1

wamp ×1