はじめに
最近、MyISAMのこと調べる機会が多かったので、今までの人生でMyISAMテーブルを触ることなんてほぼ0だったし、MySQL的には今更な感じもするけどとりあえず書き出してみる。
(殴り書きに近い。あとで調べるときにとっかかりになればと思ってる)
なので、後日付け足していける感じの自分用のメモ扱い。
基本的にドキュメントは5.6以降大きな変更無いので、5.6ベースのもののリンクを貼っとく。
MyISAMとは
…
[さらに読む]Ideas, releases, practical guides, and perspectives from the people building with MySQL.
これは MySQL Advent Calendar 2020 23 日目のエントリです。 昨日は atsuizo さんの「MySQLのデータ投入順序とデータファイルサイズのお話」でした。
そして、↓の記事の続きでもあります。
MySQL を使って EC2 r6g.large vs r5.large(mysqlslap 対決)をやってみた
前回は MySQL Community Server をインストールした AWS の EC2 インスタンスを使い、Graviton2 プロセッサと Intel プロセッサで mysqlslap 対決をしてみましたが、その延長で、innodb_log_writer_threadsの効果を確かめてみました。
innodb_log_writer_threadsとは
MySQL 8.0.22 で追加された InnoDB の設定項目(パラメータ)です。
innodb_log_writer_threads(MySQL 8.0 Reference Manual)
MySQL 8.0.11 で導入された Dedicated log writer threads …
[さらに読む]このエントリーは MySQL Advent Calendar 2020 の 12/20 のエントリーです。
問題を再現させるためにバイナリログが必要
MySQL は OSS です。誰でも無料で自由に使うことができます。
一方、Oracle や Percona といったデータベースを専門とする会社にお願いして、有償サポートを受けることも可能です。有償サポートはその道のプロフェッショナルの方が、問題解決にあたってくれるわけですが、彼らも魔法使いではありません。 問題の再現性がなければ、有効な回答がもらえないことがあります。
…
[さらに読む]
MySQL 8.0.21が来た! その1:
ユーザにコメントや属性をつけれるようになった
本エントリはMySQL Advent Calendar 2020 の19日目です
今年の夏(2020-07-13)にMySQL 8.0.xのメンテナンスリリースである8.0.21が出ました。
(その後8.0.22がリリースされ、それが最新版です)
多くの機能が追加されました。そのうち有用なものは以下のブログなどご参照ください。
MySQL 8.0.21 では Multi-Table Trick
が必要なくなったらしい
…
これは MySQL Advent Calendar 2020 21 日目のエントリです。 昨日は mita2 さんの「MySQL バイナリログをマスキングするツールを作ってみた」でした。
そして、↓の記事の続きでもあります。
AWS の EC2 Graviton2 インスタンスに MySQL をインストールしてみた(だけ)
前回はタイトルどおり本当に(R6g インスタンスに)MySQL をインストールしただけでしたので、今回はmysqlslapを使って R5(r5.large)インスタンスと比較してみます。
※mysqlslapの説明は以下のページにあります(使うのは 8.0 用ですが基本は同じ)。
4.5.7 mysqlslap — 負荷エミュレーションクライアント(MySQL 5.6 リファレンスマニュアル)
…
[さらに読む]これは MySQL Advent Calendar 2020 17 日目のエントリです(後から穴埋め)。
AWS では今年、EC2・RDS に 64-bit Arm ベースの Graviton2 プロセッサを採用したインスタンスを立てられるようになりましたので、EC2 の r6g.large インスタンス(2vCPU・メモリ 16GiB)に MySQL Server 8.0.22 をインストールしてみました。
※本当にインストールしただけです(続きは後日)。
EC2 インスタンス起動
まずは 64-bit Arm 向けの CentOS 8.3(あえて Stream ではない)を選んで、
r6g.large インスタンスを選択して…
ストレージは gp3 を選んでインスタンスを立ててみました。
MySQL Community Server 8.0.22 インストール
x86_64 系プロセッサを使う場合とほぼ同様に MySQL Community Server 8.0.22 をインストールしていきます。 …
[さらに読む]タイトルを見てピンと来ない人も多いと思いますが、MySQLで、「use DB名」してデフォルトデータベースを一度指定すると、もう、何も指定していない状態には戻れないようですというお話です(ようです、というのは、私が方法を知らないだけかもしれないということ)。MySQLに、デフォルトデータベース(以下デフォルトDB)を指定せずに接続した直後は、 mysql> SELECT DATABASE(); +------------+ | DATABASE() | +------------+ | NULL | +------------+ となっています。デフォルトDBを指定していないのだから当然ですよ…
https://github.com/siddontang/go-mysql/ というライブラリを使ったレプリケーションについて書きます。
go-mysql ググラビリティがとても悪いのですが https://github.com/siddontang/go-mysql/...
この日記は、RDBMS-GIS(MySQL,PostgreSQLなど) Advent Calendar 2020 の 17日目のエントリーです。 はじめに MySQLで取り扱うことができる空間情報の型には、点、線、ポリゴン があります。それぞれ にそれらの集合を扱える型が存在してるので、都合6つとなります。これら相互の変換について考えてみたいと思います。なお、緑色線は本日記および今後の日記にて紹介を予定しているものです(スマートなやり方ではなく力ワザ(ちからわざ)のものも含む)。赤い点線は、今のところ試したことがないもの。 今回使うデータ 今回のお試しの範囲では、テーブルにデータを入れておく必…
アプリからのクソクエリを変更できない闇の魔術、に対する防衛術[MySQL]
本エントリは闇の魔術に対する防衛術 Advent Calendar 2020の17日目
1.プロローグ
兵隊1「隊長! 今度採用したアプリケーション、バックエンドはMySQLですが、やたら動作が遅いんです」
隊長「そんなときにはな、急いで口で...じゃなくて、一般クエリログを取得して、どんなクソクエリがきているか確認しろ」
兵隊1「わかりました〜、おやか...じゃなくて、隊長」
アイテム1: 一般クエリログ
兵隊1「わかりました〜、おやかた。このクエリAですね!」
…