sql >> データベース >  >> RDS >> Mysql

MySQLを使用してテーブルをINNODBバッファープールにプリロードする方法は?

    これにより、実行するクエリのリストが表示されます;)

    SELECT 
      CONCAT('SELECT ',MIN(c.COLUMN_NAME),' FROM ',c.TABLE_NAME,' WHERE ',MIN(c.COLUMN_NAME),' IS NOT NULL')
    FROM
      information_schema.COLUMNS AS c
    LEFT JOIN (
      SELECT DISTINCT
        TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME
      FROM
        information_schema.KEY_COLUMN_USAGE
    ) AS k
    USING
      (TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME)
    WHERE
      c.TABLE_SCHEMA = 'yourDatabase'
      AND k.COLUMN_NAME IS NULL
    GROUP BY
      c.TABLE_NAME
    

    これをストアドプロシージャに入れて、カーソルで結果セットを確認できます。各行からプリペアドステートメントを作成し、実行します。



    1. SQLServerでデータベースの破損に対処する方法を知る方法

    2. OracleのTO_CHAR(datetime)関数

    3. Python Postgrespsycopg2ThreadedConnectionPoolが使い果たされました

    4. MySQLのVARCHAR(255)とTINYTEXT文字列タイプの違いは何ですか?