mysql はデータベース内の各テーブルのデータ量をどのようにカウントしますか?

最近データベースを移行しているのですが、データの欠落を避けるために、移行前と移行後のデータ量が一致しているかどうかを比較したいと考えています。

SQL:

SELECT
	table_name,
	table_rows 
FROM
	information_schema.TABLES 
WHERE
	TABLE_SCHEMA = "你的数据库名称" 
ORDER BY
	table_rows DESC;

テストライブラリを見つけました

データベース全体のデータの総量をカウントしたい場合は、次の方法も実行できます。

SELECT
	sum(table_rows)
FROM
	information_schema.TABLES 
WHERE
	TABLE_SCHEMA = "你的数据库名称" 
ORDER BY
	table_rows DESC;

実際、これらのデータはすべて、mysql に付属するメタデータ データベース内にあります。

各 mysql には独自の information_schema ライブラリがあり、テーブルやインデックスなど、mysql サービスに関するすべての情報が記録されます。

必要な情報は TABLES テーブルにあります
ここに画像の説明を挿入します


死ぬほど笑いますが、上記の内容は読まなくても大丈夫です。長い間作業した結果、データは正確ではありません。MySQL ドキュメントを読んだ後、innodb のスキーマ ライブラリは単なる推定値です。嘤嘤嘤~

おすすめ

転載: blog.csdn.net/qq_33709582/article/details/128642056