3098 件中 1 - 10 件を表示
次の 10 件 »
最新のMySQL ShellだけでMySQLのPITR可能なバックアップを設定する(フルバックアップ編)

MySQL Shellには util.dumpInstance = フルバックアップと、9.2くらいから util.dumpBinlogs = 増分バックアップがあるので、ひょっとしたらMySQL ShellだけでPITR可能なバックアップをシンプルに設定できるのではないかと思った。

TL;DR

  • util.dumpBinlogs は「前回吸い上げたバイナリログから増えたぶんだけをMySQLプロトコルで吸い上げてローカルFSに保管」することができる。初回のみ最初のバイナリログファイル名の指定が必要
    • mysqlbinlog --stop-never --raw -R
[さらに読む]
1つ目のベンチマークの性能スケールを改善しました。[MySQL RP]

 私の個人活動、MySQL RP (Restore Performance) で、1つベンチマーク結果を十分改善しました。区切りが良いので簡単に報告だけ。

 ベンチマークは、DimitriKさん ( http://dimitrik.free.fr/blog/ ) がメンテして公開している sysbench バイナリ & スクリプト BMK-kit ( http://dimitrik.free.fr/blog/posts/mysql-perf-bmk-kit.html ) でいうところの、sb11-OLTP_RO_10M_8tab-uniform-s_ranges1-Rsize100-SecIDX-notrx-socket.sh 相当で、

セカンダリ索引の100行スキャンで、索引カラム以外のデータを返すクエリ

[さらに読む]
MySQL SYSTEM_USER 権限を持ったユーザの操作には SYSTEM_USER 権限 が必要

動的権限と静的権限

「動的権限は、従来の静的権限が細分化されたもの。静的権限を持っていれば、動的権限はREVOKEしても影響はない」と考えていました。 例えば、SUPER 権限 (静的) を持っていれば、BINLOG_ADMIN 権限 (動的) がなくとも、バイナリログをパージできます。

mysql> SHOW GRANTS;
+-------------------------------------------+
| Grants for super@localhost                |
+-------------------------------------------+
| GRANT SUPER ON *.* TO `super`@`localhost` |
+-------------------------------------------+
1 row in set (0.00 sec)

mysql>  PURGE BINARY LOGS TO 'binlog.000008';
Query OK, 0 rows affected (0.01 sec)

しかし、SYSTEM_USER 権限は、静的権限では満たせない仕様がありました。

dev.mysql.com

[さらに読む]
TechLION vol.41 参戦(登壇)

2025年6月24日に開催された 『TechLION vol.41 〜コミュニティの終活〜』に呼んでいただき、出演者(登壇者)として参戦して参りました。 techlion.jp テーマが「コミュニティの終活」ということで、終わりかかっているような日本MySQLユーザ会に白羽の矢が立ったのだと思いますが、一応まだ日本MySQLユーザ会が終了するというプランはございませんので、その辺りを理解していただけましたら、この日お伝えしたかったことの半分は済んだようなものです。ということで残りの半分を・・・(と言って私の説明を開始しました(笑))。 YAPCさまさま 一緒に登壇した kobakenさん。YA…

バイナリログのバックアップについて考える in 2025

rsync

シェルが必要(たとえば ~/.ssh/authorized_keys で mysqldの実効アカウントにログインできるとか)なので新規に採用は嫌な感じ。
それを飲めるなら候補の一つとしてアリな気はする。
帯域ネックなら -z で圧縮をかけるとCPUを使いつつ転送に圧縮をかけられるが、転送後のファイルは圧縮されていない状態で現れるので保管を考えると更に圧縮する必要があって手間は手間。 binlog_transaction_compression が有効なら最初から圧縮されているのでベター。

[さらに読む]
最近MySQLの文字列比較セマンティクスは「非空白埋め(NO PAD)」(概ねMySQL8.0以降。utf8mb4の一部のコレーション(0900を含む))

以前、以下のようなブログエントリを書いた。

MySQLの文字列比較セマンティクスは「空白埋め(PAD SPACE)」(概ねUTF8以前)

書いた時点でタイトルは「MySQLの文字列比較セマンティクスは「空白埋め」」であり、その時点では正しかったが、最近では少し違ってきた。

例えばMySQL 8.0.x以降をLinuxにインストールした場合、過去のブログエントリのように'a'と'a 'は同一視されず、違うものと認識されるようになった。

mysql> select 'a' = 'a';
+-----------+
| 'a' = 'a' |
+-----------+
| 1 |
+-----------+
1 row in set (0.00 sec)

mysql> select 'a' = 'a '; -- 'a' の後にスペースがあると同一視されない(!)
+------------+ …

[さらに読む]
『MySQL徹底入門 第5版』本日発売(6/16)

お待たせしました。第4版から約5年。最新版のMySQLに対応した『MySQL徹底入門 第5版』が本日発売となりました。MySQL徹底入門 第5版 MySQL 8.4 LTS対応作者:yoku0825,坂井 恵,鶴長 鎮一,とみた まさひろ,深町 日出海,福山 裕大,山﨑 由章翔泳社Amazon 著者の一人として「私も待ち望んでいました」というと変に感じる人もいるかもしれませんが、多くの仲間たちと執筆しているので、自分の担当部分以外では「へぇ、そんなところも変わっていたのかぁ」という発見があったりして、本当に、私も待ち望んでいた最新情報満載の一冊となっていると思います。 ご存じの方も多いと思いま…

Oracle Linux 8でMySQL 5.7のrpmをビルドする

TL;DR

MySQL Product Archives で見たら、MySQL 5.7はOracle Linux(に限らずRHEL系の)8に対応したrpmはなかった。けど欲しい。

というわけで(el7用のrpmファイルでも動くような気はするけど一応) Oracle Linuxのコンテナイメージ の中でrpmbuildするメモ。

# wget http://repo.mysql.com/yum/mysql-5.7-community/el/7/SRPMS/mysql-community-5.7.44-1.el7.src.rpm
# rpm -i …
[さらに読む]
Re: セキュアそうでセキュアじゃない少しセキュアな気分になれるmysql_config_editorに直接--passwordを指定できるようにしてみた


セキュアそうでセキュアじゃない少しセキュアな気分になれるmysql_config_editor from do_aki

  • mysql_config_editor--password, -p だけは引数を受け付けられなくて、常にプロンプトでパスワードを要求する

[さらに読む]
MySQL性能回復活動(MySQL RP)を独自に始めます

ようやく、MySQL性能向上開発に専念する体制が整いました。やっと開発作業に戻れます。

実質無所属なのは人生初なので、各種社会保障関係の手続きとか、どのサイトを使って組み合わせるか、どういう設定でアカウントをつくるかなどなど、開発環境も含めて全部自分で決めなければならず、結構時間を要してしまいました。すみません。

結果、本家在籍時と同様の使い勝手で自由に開発できるようになりました。

名前は、『MySQL RP (Restore Performance)』 としました。 ソースコードはMySQLのオープンソースライセンス(GPLv2ベース)で提供します。最初は劣化がもう増えない、劣化が少ないと思われる 8.0 …

[さらに読む]
3098 件中 1 - 10 件を表示
次の 10 件 »