1927 件中 41 - 50 件を表示
« 前の 10 件 | 次の 10 件 »
Displaying posts with tag: MySQL (reset)
MySQLの論理バックアップにおける2段階のViewのリストア

TL;DR

  • mysqldump とかが CREATE VIEW v1 AS SELECT 1 AS num, 1 AS val とかいう一見VIEW定義となんの関係もない CREATE VIEW 文を吐く理由

mysqldumpは単にアルファベット順にテーブルやビューの定義を取得するので、シンプルに直接 CREATE VIEW を書いてしまうと順番によってはリストアに転ける。

mysql80 38> CREATE TABLE t1 (num serial, val varchar(32));
Query OK, 0 rows affected (0.04 sec)

mysql80 38> INSERT INTO t1 VALUES (1, 'one'), (2, 'two');
Query OK, 2 rows affected (0.01 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql80 38> CREATE VIEW v1 AS SELECT * FROM t1;
Query OK, 0 rows affected (0.01 sec)

mysql80 38> CREATE VIEW a_v1 AS SELECT val FROM v1 WHERE num = 1;
Query OK, 0 rows affected (0.02 sec)

mysql80 38> SHOW TABLES; …
[さらに読む]
オープンソースカンファレンス(OSC)2023-Fukuoka 参加

2023年12月9日に福岡市で開催された、オープンソースカンファレンス2023福岡(OSC 2023-Fukuoka)に参加してきました。 相撲の話じゃないですけど、天下納めの九州場所。今年最後のOSCは、やはり九州です。 event.ospn.jp お昼の獲得に失敗 ノッケから「食べ物のうらみ」ですが、各地のOSCに参加する際は、ランチも含めて、当地での食事をとても楽しみにしています。それがですよ。午後イチのセミナーを聞きたかったのに、午前の最後に早めに出るという調整を怠ったせいで、ランチを食べ損なってしまった悲しさ。ただただ私が悪いんですけどね(笑)。 せめてもの福岡らしさを得るために、コ…

Aurora の wait_timeout の挙動が MySQL と違った

TL;DR

  • MySQL は wait_timeout に設定した値ぴったりに、接続が切られる
  • Aurora は wait_timeout の値 + 最大1分 に、接続が切られる
  • エラーメッセージも違う

wait_timeout とは

wait_timeout はアイドルセッションに対するタイムアウトを指定するパラメータです。 SQLが実行されず、アイドル状態(Sleep)がしばらく続くとそのセッションは自動的に切断されます。

wait_timeout (interactive_timeoutもあわせてます)を20秒に設定した状態で、Vanilla …

[さらに読む]
SQL Profiling処理について

SQLの処理に時間がかかっている場合は、基本的にEXPLAINで実行プランを確認して頂き、
必要に応じてパフォーマンスチューニングして頂きますが、更にSQLのどのイベントで時間がかかっているか確認したい時はprofilingを利用していましたがDeprecate Noticeが以前から出ているので、
Performance Schemaを用いたProfilingに慣れていく必要があります。どうしても慣れているProfilingをいまだに使いがちなので、こちらに簡単にメモしておきます。色々なサイトで方法を説明して頂いているので詳細は記載しませんが、ここでは少しだけアウトプットを確認し易くしています。

環境

root@localhost [(none)]> select @@version;
+-----------+
| @@version | …
[さらに読む]
MySQL Shell dumpInstance の分割ロジック その2

この記事は MySQL Advent Calendar 2023 の23日目の記事です。

MySQL Shell の dumpInstance の chunk ロジックの説明エントリーその2です。 前回の記事では、主キーが数値型以外のケースを説明しました。主キーが数値型以外では、LIMIT句を利用して線形にレンジを求めるロジックが使われます。

今回の記事では、主キーが数値型のケースのロジック (chunk_integer_column) を説明します。

キーが数値型の場合 (chunk_integer_column)

主キーが数値型のテーブルに対する dumpInstance では、BETWEEN句を使ってテーブルを chunk に分割して(小分けにして)、バックアップが取得が行われます。

SELECT SQL_NO_CACHE …
[さらに読む]
MySQL Shell dumpInstance の分割ロジック その1

この記事は MySQL Advent Calendar 2023 の21日目の記事です。

dumpInstance

dumpInstance は論理バックアップを取得する mysqlsh のコマンドです。 テーブルを分割し、並列でSELECTし、高速にバックアップしてくれます。

このように、1つのテーブルが複数のファイル(chunk)に分割されて出力されます。

$ ls -al ~/dump | grep pkchar | head
-rw-r----- 1 s-mitani s-mitani 2155324 Sep 11 13:12 t@pkchar_tbl@0.tsv
-rw-r----- 1 s-mitani s-mitani      24 Sep 11 13:12 t@pkchar_tbl@0.tsv.idx
-rw-r----- 1 s-mitani s-mitani 2155324 Sep 11 13:12 t@pkchar_tbl@10.tsv
-rw-r----- 1 s-mitani s-mitani      24 Sep 11 13:12 t@pkchar_tbl@10.tsv.idx
-rw-r----- 1 s-mitani s-mitani 2155324 Sep 11 13:12 t@pkchar_tbl@11.tsv
-rw-r----- 1 s-mitani s-mitani      24 Sep 11 13:12 t@pkchar_tbl@11.tsv.idx
[さらに読む]
InnoDB redo logを解読している話

この記事はMySQLのカレンダー | Advent Calendar 2023 - Qiitaの19日目の記事です。

MySQLredoログには何が書かれているのだろうか?
そんな疑問を解決するために私はアマゾンの奥地へと旅立つことにしました。

MySQLSQLをパースし、実行計画を立てたあと、実際にストレージ(メモリ含む)でデータを処理する部分はプラガブルなストレージエンジンに実装を移譲する設計になっています。
しかし、処理をストレージエンジンが …

[さらに読む]
オープンソースカンファレンス(OSC)2023-Niigata 参加

2023年11月25日に新潟市で開催された「オープンソースカンファレンス2023新潟(OSC2023-Niigata)」に参加してきました。 新潟は人を惹きつける美しい透明な液体をはじめとして、胃袋への魅惑がたくさんあるので、当地でのイベントに参加できるのは嬉しいものです。 ospn.connpass.com 4年ぶりのリアル開催 どの地域でもOSCで重要なのは懇親会ですが、新潟は特にその重要度が高いです(私見)。 昨年は長岡市での開催で、現地に集まる人も一応いたけれども基本的には、その現地を中継拠点とした「オンライン開催」でした。 そんなわけで、今年新潟市にて4年ぶりの、展示+セミナーという…

やたら増えるログの闇に対する防衛術2023[MySQL]

本エントリは闇の魔術に対する防衛術 Advent Calendar 2023の16日目とMySQL Advent Calendar 2023 16日目のクロスエントリです。

1.プロローグ
兵隊「隊長! 今度採用したアプリケーション、バックエンドはMySQLですが、最新のMySQL 8.0を使っているらしく、やたらエラーログにWarningを出すんです」
隊長「なーにー、やっちまったなぁ」

2.防衛術:エラーログのフィルタリング
隊長「男は黙ってlog_error_suppression_list」

MySQL 8.0.13からlog_error_suppression_listがサポートされました。

[さらに読む]
明日使えない地味なシェルスクリプト用ワンライナー集

この記事は MySQLのカレンダー | Advent Calendar 2023 の7日目の記事です。
6日目は けんつ さんの MySQL いい感じにコントリビュートする方法(非公式) - それが僕には楽しかったんです。 でした。

TL;DR

  • なんの変哲もないよく使うワンライナーです。SQLだけでできたり使ったりするものは入っていない気がする

バージョンxxx移行yyy未満、みたいなのをやりたい

  • MySQLは内部的にも メジャーバージョン番号 * 10000 + マイナーバージョン番号 * 100 + …
[さらに読む]
1927 件中 41 - 50 件を表示
« 前の 10 件 | 次の 10 件 »