Kar*_*ick 8 mysql storage-engine mysql-5.5
我已经使用引擎BLACKHOLE创建了表, 基本上 BLACKHOLE 存储引擎充当“黑洞”,它接受数据但将其丢弃并且不存储它。检索总是返回空结果。
我听说我们可以通过创建一个与旧表相同的新表来检索数据,存储引擎为 innodb 或 myisam。但我也试过,但无法得到结果。任何人都可以帮助我解决这个问题。
mysql> CREATE TABLE test1(i INT, c CHAR(10)) ENGINE = BLACKHOLE;
Query OK, 0 rows affected (0.08 sec)
mysql> INSERT INTO test1 VALUES(1,'record one'),(2,'record two');
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
mysql> select * from test1;
Empty set (0.00 sec)
mysql> CREATE TABLE test_recovery as select * from test1;
Query OK, 0 rows affected (0.17 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> ALTER TABLE test_recovery ENGINE = innodb;
Query OK, 0 rows affected (0.25 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM test_recovery;
Empty set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
Rol*_*DBA 13
你说
我听说我们可以通过创建一个与旧表相同的新表来检索数据,存储引擎为 innodb 或 myisam
谁告诉你应该告诉你像@jynus 评论的那样启用二进制日志。
该BLACKHOLE存储引擎根本不会存储数据。它是一种特殊的存储引擎,用于非常细致的设置。
有些采用星型拓扑将数据写入 MySQL Replication Master。Master只有BLACKHOLE表。所有的 Slaves 都有 InnoDB 或 MyISAM。这样,如果 Master 被黑客入侵,就没有本地数据。这样的主机称为分发主机。
Apr 28, 2011
:星型拓扑中的 MySQL (ServerFault)Mar 11, 2011
:星型拓扑中的 MySQL (StackOverflow)这涉及使用三台服务器设置循环复制。两个 Master 混合了 BLACKHOLE 表,一个 Slave 带有所有真实的表。这种技术早于多源复制。
Apr 18, 2013
:单从 - 多主 MySQL 复制May 16, 2011
:在mySQL DB 中是否可以实现多主单从?(服务器故障)我知道有一个虚拟主机客户因为一张桌子上的性能问题而去了 Percona。由于客户端有多个从站的 MySQL 复制,Percona 将问题表转换为 BLACKHOLE。这提高了 Master 上的写入性能。数据必须从奴隶读取。
我曾经在一篇记录审计信息的帖子中提出了这个建议(Performance of a Trigger vs Stored Procedure in MySQL)
虽然有些评论让我想起了 StarTrek DS9,但 BLACKHOLE 存储引擎正如它的名字所说:没有数据被存储!!!如果您启用了二进制日志,那将是您获得数据的唯一机会。
归档时间: |
|
查看次数: |
1363 次 |
最近记录: |