製品アップデート
製品お知らせ
SELECTt1.TABLE_SCHEMA,t1.TABLE_NAME,t1.COLUMN_NAME,t1.DATA_TYPEFROMINFORMATION_SCHEMA.COLUMNS t1INNER JOIN (-- サブクエリ:まずは条件に合致する(特定タイプの列数 >= 2)テーブルを抽出しますSELECTTABLE_SCHEMA,TABLE_NAMEFROMINFORMATION_SCHEMA.COLUMNSWHEREDATA_TYPE IN ('blob', 'mediumblob', 'longblob', 'json', 'text', 'MEDIUMTEXT', 'LONGTEXT', 'geometry')AND TABLE_SCHEMA IN ('xxx', 'xxxx') -- 実際のライブラリ名に置き換えてくださいGROUP BYTABLE_SCHEMA,TABLE_NAMEHAVINGCOUNT(*) >= 2) t2 ON t1.TABLE_SCHEMA = t2.TABLE_SCHEMA AND t1.TABLE_NAME = t2.TABLE_NAMEWHERE-- 外側で再度タイプをフィルタリングし、リスクを引き起こすカラムのみをリストアップすることを保証しますt1.DATA_TYPE IN ('blob', 'mediumblob', 'longblob', 'json', 'text', 'MEDIUMTEXT', 'LONGTEXT', 'geometry');
SELECTTABLE_SCHEMA,TABLE_NAME,COUNT(*) as risky_column_count,GROUP_CONCAT(COLUMN_NAME) as risky_columns -- 任意:カラム名を結合して一行に表示しますFROMINFORMATION_SCHEMA.COLUMNSWHEREDATA_TYPE IN ('blob', 'mediumblob', 'longblob', 'json', 'text', 'MEDIUMTEXT', 'LONGTEXT', 'geometry')AND TABLE_SCHEMA IN ('xxx', 'xxxx')GROUP BYTABLE_SCHEMA,TABLE_NAMEHAVINGCOUNT(*) >= 2;
alter table xx engine = innodb;の方法で修復可能です。テーブルロックによる業務影響を避けるため、pt-oscなどのツールを使用し、業務閑散期に修復を行うことを推奨します。フィードバック