mysqlのコマンドCHECKSUM TABLE table1name
は、InnoDB & MyISAMでは動作しますが、ndbcluster
では動作しません。チェックサムや関連する属性を見つける他の方法は、テーブルが相互作用した後も同じであるかどうかを知ることです。mysqlチェックサムテーブルがndbclusterで動作しません
0
A
答えて
1
質問が正しく分かったら、NDBエンジンをベースにしているときにmysqlテーブルのチェックサムを取得する方法を尋ねています。
SELECT @crc as crc FROM
(
select @crc := ''
) tmp,
(
SELECT min(
length(
@crc := sha1(
concat(
@crc, sha1(
concat_ws('#', field_1, field_2, ...)
)
)
)
)
)
)
FROM
(
SELECT field_1, field_2, ... FROM your_table
ORDER BY yourtable_some_key_id
) tmp_1
) final
はInnoDBの下では、これが第2のサブクエリを必要としないと動作しますが、その後、ネイティブ CHECKSUM TABLEはyour_table でも動作します: 次のクエリでは、トリックを行います。 ORDER BY句で指定できる順序にかかわらず、内部処理は結果のソート前に行われ、NDBではこの順序が常に同じではありません。この場合、強制的に強制する必要があります。したがって、特定の並べ替え順を持つ2番目のサブクエリです。
これをNDBで動作させるために最初に支払うのは、テーブルと同じ大きさの2番目のサブクエリによって作成された内部オーダーテンポラリテーブルです。これはこのクエリを使用する際に注意することです。
第2価格は、この仮注文テーブルを作成するのにかかる時間です。 100Kの行を持つテーブルのテストでは、サブクエリで約1.5〜2秒、クエリなしで約100ミリ秒かかりました。
このソリューションは、このことができますthis blog
・ホープで見つけ、より一般的なものに基づいています。
関連する問題
- 1. MySQL LEFT JOINが動作しません
- 2. mySQL-Queryが動作しません:xyz%
- 3. C#とMysqlが動作しません
- 4. Phalcon MySQL UDPATEが動作しません
- 5. JPA/HibernateはPostgresqlで動作しますが、Mysqlでは動作しません
- 6. Mysql NDBCLUSTERに代わります
- 7. MySQLのクエリはC#で動作しませんが、MySQLの作業ベンチでは
- 8. Mysqlのトリガーは動作しません
- 9. MySQLとphpは動作しません
- 10. FireDac MySql Connector.ExecSqlは動作しません。
- 11. LIMITのMySQLは動作しません
- 12. PHP mysqlクエリはPHPでは動作しませんが、MySQLでうまく動作します
- 13. サブクエリでグループ化する前に、mysql 5.5で動作しますが、mysql 5.5では動作しません。
- 14. mysqlデリミタはmysqlでは動作しますが、PHPでは動作しません
- 15. Predicate BuilderでMySQLが動作しませんか?
- 16. REGEXPがmysqlの '(アポストロフィ)と - (ダッシュ)で動作しません。
- 17. Mysqlのストアドプロシージャ:DEFINER = `root` @`% `がローカルホストで動作していません
- 18. Mysqlでユニオンが動作していません
- 19. else文がmysqlで動作しません
- 20. Mysql 5.6がMac OSで動作していません
- 21. MySQLがローカルホスト上で動作していません
- 22. mysql -u rootコマンドがhadoopで動作していません
- 23. MySQLの文は、mysqlでは動作しますが、コマンドラインからは動作しません。
- 24. PHP MySQLエコーが正しく動作しません
- 25. MySQL 4templateを使用したSubsonic 3.0.0.3が動作しません
- 26. MySQL - 日付間隔が正しく動作しません。
- 27. PHP MySqlテーブルの作成 - シンプルですが動作しません。どうして?
- 28. サーバーでMysqlのクエリが動作していませんが、ローカルで正常に動作しています
- 29. PHP/mySQLのような機能が動作しません
- 30. MySQLのプロシージャが正常に動作しません。