タグ

ブックマーク / dev.mysql.com (7)

  • MySQL :: MySQL 8.0 リファレンスマニュアル :: 4.6.8.2 mysqlbinlog 行イベントの表示

    次の例は、データの変更を指定する行イベントを mysqlbinlog が表示する方法を説明しています。 これらは WRITE_ROWS_EVENT、UPDATE_ROWS_EVENT、および DELETE_ROWS_EVENT タイプコードを持つイベントに対応します。 --base64-output=DECODE-ROWS オプションおよび --verbose オプションを、行イベント出力に影響を与えるために使用できます。 サーバーが行ベースのバイナリロギングを使用しており、次のステートメントのシーケンスを実行するとします。 CREATE TABLE t ( id INT NOT NULL, name VARCHAR(20) NOT NULL, date DATE NULL ) ENGINE = InnoDB; START TRANSACTION; INSERT INTO t VALUES

    teckl
    teckl 2024/01/12
    久々に mysqlbinlog --base64-output=DECODE-ROWS --verbose --start-datetime="xxxx" --stop-datetime="xxxx" binlog 先生のお世話になりました…🐬
  • MySQL :: MySQL 8.0 リファレンスマニュアル :: 24.2.5 KEY パーティショニング

    キーによるパーティショニングはハッシュによるパーティショニングと似ていますが、ハッシュパーティショニングはユーザー定義の式を使用し、キーパーティショニング用のハッシュ関数は MySQL サーバーによって提供されます。 NDB Cluster はこの目的のために MD5() を使用します。ほかのストレージエンジンを使用するテーブルの場合、サーバーは独自の内部ハッシュ関数を使用します。 CREATE TABLE ... PARTITION BY KEY の構文規則は、ハッシュによってパーティション化されたテーブルを作成する場合のものと似ています。 主な違いを次に示します。 HASH ではなく KEY が使用されます。 KEY は、0 個以上のカラム名のリストのみを取ります。 パーティショニングキーとして使用されるカラムは、テーブルの主キーの一部またはすべてを構成している必要があります (テーブ

    teckl
    teckl 2019/04/15
    PARTITION BY KEY (hoge_id) PARTITIONS 10; で10分割
  • MySQL :: MySQL 8.0 リファレンスマニュアル :: 8.2.1.3 インデックスマージの最適化

    インデックスマージアクセス方法では、複数の range スキャンを含む行が取得され、その結果が 1 つにマージされます。 このアクセス方法では、単一のテーブルからのみインデックススキャンがマージされ、複数のテーブルにわたるスキャンはマージされません。 このマージによって、その基盤となるスキャンの和集合、共通集合、または共通集合の和集合を生成できます。 インデックスマージを使用できるクエリーの例: SELECT * FROM tbl_name WHERE key1 = 10 OR key2 = 20; SELECT * FROM tbl_name WHERE (key1 = 10 OR key2 = 20) AND non_key = 30; SELECT * FROM t1, t2 WHERE (t1.key1 IN (1,2) OR t1.key2 LIKE 'value%') AND

    teckl
    teckl 2019/03/25
    Using intersect, Using union, Using sort_union あたりについて、落ち着いたらちゃんと読む。。
  • MySQL :: MySQL 8.0 リファレンスマニュアル :: 15.8.3.6 バッファープールの状態の保存と復元

    サーバーの再起動後の warmup 期間を短縮するために、InnoDB では、サーバーの停止時にバッファプールごとに最近使用されたページの割合が保存され、サーバーの起動時にこれらのページがリストアされます。 最近使用されたページのうち、格納されたページの割合は、innodb_buffer_pool_dump_pct 構成オプションによって定義されます。 ビジー状態のサーバーを再起動した後、バッファプール内にあったディスクページがメモリーに戻されるため (同じデータがクエリー、更新などされるため)、通常はスループットが急激に向上するウォームアップ期間があります。 起動時にバッファプールをリストアする機能により、DML 操作が対応する行にアクセスするのを待機するのではなく、再起動前にバッファプールにあったディスクページをリロードすることでウォームアップ期間が短縮されます。 また、I/O リクエ

    teckl
    teckl 2019/03/07
    > バッファープール自体のサイズは何 G バイトもある可能性がありますが、InnoDB がディスク上に保存するデータはそれに比べて非常に少量です
  • MySQL :: MySQL 5.6 リファレンスマニュアル :: 14.5.5 テーブルスペースの別のサーバーへのコピー (トランスポータブルテーブルスペース)

    teckl
    teckl 2019/02/22
    これでいけそう。 a > ALTER TABLE t1 DISCARD TABLESPACE; b > FLUSH TABLES t1 FOR EXPORT; scp t1.{cfg,ibd} aaa/ ; b > unlock tables; a > ALTER TABLE t1 IMPORT TABLESPACE;
  • MySQL :: MySQL 8.0 Reference Manual :: 2.5.9 Managing MySQL Server with systemd

    teckl
    teckl 2018/12/25
    systemdの `mysqld@.service` で複数インスタンスを上げるやつ、結構ハマったのでメモ。 --defaults-file はオプションの先頭で指定しないと駄目だったようで…
  • MySQL AB :: MySQL 5.1 リファレンスマニュアル :: 15 パーティショニング

    テーブルのパーティション化は、ウィンドウ関数で使用されるパーティション化とは異なります。 ウィンドウ関数の詳細は、セクション12.21「ウィンドウ関数」 を参照してください。 MySQL 8.0 では、パーティション分割のサポートは InnoDB および NDB ストレージエンジンによって提供されます。 MySQL 8.0 は現在、MyISAM などの InnoDB または NDB 以外のストレージエンジンを使用したテーブルのパーティション化をサポートしていません。 ネイティブパーティション化サポートを提供しないストレージエンジンを使用してパーティションテーブルを作成しようとすると、 ER_CHECK_NOT_IMPLEMENTED で失敗します。 Oracle によって提供される MySQL 8.0 Community バイナリには、InnoDB および NDB ストレージエンジンによっ

  • 1