MySQL
speakerdeck.com 読んでて気付いたんだけど、確かに UTF8MB3 が廃止される未来はあるんだよな、という感じだった。 dev.mysql.com MySQL v5.6/5.7 から v8.0 にアップグレードした環境と、生え抜きで v8.0 の環境が混在していて、特に charset や collation …
qiita.com あーなるほどね! となっていた。 日本語での解説は以下の記事がよさそうかな? gihyo.jp 実際に変更、というか削除されたのは以下。 dev.mysql.com とりあえず雑に MySQL 8.3 以降を使う場合は mysql2 0.5.6 を使いましょう! という話。 そうで…
アプリケーション側で実行流量の制御をしておらず、人力で大量にアクセスすると死ぬ機能がリリースされてしまい、無事に死亡する事案に遭遇していた。 タイムアウト時間を超えた MySQL 内プロセスを kill する 対象を抽出する 以下のようにすると、カンマ区…
久しぶりにゼロから docker-compose.yml 書いててハマったので。 常日頃から触ってないとわすれがちなの、トシを感じる。 ホスト側から MySQL CLI でコンテナ側の MySQL server へログインするとき ホスト名は localhost を使用せずに 127.0.0.1 を指定する…
俺の、って書いておかないとマサカリ飛んできそうなので。
https://blogs.oracle.com/mysql/post/introducing-mysql-innovation-and-longterm-support-lts-versions Innovation Release と LTS Release がメインになって、 Major は単純に二年ごとに増える、みたいな気持ちでよさそう。 Innovation Release の最終バ…
掲題のエラーで悩んでいるチームがあったので、ヒュッと「MySQL のバグじゃねっすかね?」とだけ Slack で投げていたんだけど、ちゃんと確認することにした。
データ全部消したので 1 から始めてぇ!って時にやる。 ALTER TABLE ${TABLE_NAME} AUTO_INCREMENT = 1; 参考 notepad-blog.com
単体で動作させている RDS だと、以前書いたような以下のようなお作法で一貫性のある SQL ダンプが取得できる。 donbulinux.hatenablog.jp これをこのままマルチ AZ な RDS 環境で実行すると以下のエラーになる。 mysqldump: Couldn't execute 'FLUSH TABLES…
ロケ地 MySQL 8.0.31 macOS Ventura 先日の Unbale ... の記事でも書いた通り、インストール直後の MySQL は Asia/Tokyo をタイムゾーンに指定するとエラーを返します。 ゆるせねえよ……、わからせてやる! しかしこの手の話題、 OS とか物理筐体移行する際に…
macOS が一番お目にかかるんじゃないすかねー、 brew でインストールしていざ起動したらこれ。 よく言われている pid ファイルの不在と MySQL の data-dir 権限を対応しても動かない時は。 一度 mysql 系のプロセスを全部消すか、OS ごと再起動する mysql --…
groups というテーブルがあるんだけど、SELECT を投げようとして syntax error になった。 mysql> SELECT * FROM groups; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for …
GRANT ALL PRIVILEGES ON example_database.* TO example_user@localhost IDENTIFIED BY 'password'; FLUSH PRIVILEGES; 長らくこの MySQL 5.x 世代の「ユーザ作成と同時に権限も設定する」というヤツになれすぎて、 MySQL8 世代のユーザ作ってから GRANT し…
タイトルのとおり。 RDS で MySQL 5.7.3x 系エンジンの環境で、年次更新みたいな処理でデータベースメンテナンスをしていたのだけど、 mysql コマンドで RDS に接続時 SELECT や UPDATE 発行時に日本語入力しても消える (コピペしても消える) 状態だった。 m…
タイトルの通り。 DROP DATABASE example_development; したらなんか残ってしまい、 rails db: 系コマンドも通らなくなった。 原因は、 mysql_data 以下のディレクトリにデータベース名のディレクトリが残ってしまっているので。 削除する /usr/local/var/my…
いい加減 8 に以降しろ! と言われそうだけど、メンテナンスが必要な環境でまだ動いているので。 GPG キー yum update を実行したところ、 MySQL Community 版のリポジトリ読み込みでエラーが出た。 The GPG keys listed for the "MySQL 5.7 Community Serve…
RHEL 7 系の環境にちょっと古い Rails 環境を作る必要が出てきて、確認したら Rails 5.0.x かつ mysql2 0.4.5 だった。 ので、これは MySQL 8.0.x 使えないなと、 5.7.x を調達することになったのだけど、ちょっと悩んだのでメモしておく。 yum 経由でインス…
浅学にして mysql-shell なるものを知らなかった (mysql-client についてくる CLI のことだと思ってた) ので入れてみた。 brew install MySQL って Cask 扱いでしたっけ? もう覚えてないワ。MySQL 利用している brew 環境下ならそのままインストールできる…
8.0.26 のお知らせ見てたら出てたので。 どう変わった とりあえずここだけ抑えておけば良さそう。 dev.mysql.com Incompatible Change: From MySQL 8.0.26, new aliases or replacement names are provided for most remaining identifiers that contain the…
MySQL 8.0.x ではバイナリログが標準で有効化されている。 ので、無効化する。 [mysqld] disable-log-bin これでヨイ。 本当はローテートするようにして、ログを無効化しない方が良いのだけれど、開発環境だったり、定点バックアップ毎にしかデータ保証しな…
なん……何? (ここ数年 RDS ばかり使っていたので、生 MySQL を久しぶりに使った顔 ロケ地 CentOS7 MySQL 8.0.22 community edition 該当ユーザの権限 GRANT ALL PRIVILEGES ${データベース名}.* ON ${ユーザ名}@localhost; PROCESS 権限が足りない mysqldump…
ロケ地 macos 11 Big Sur Homebrew MySQL 8.0.22_1 ${USER} は自分のユーザ名に相当します
できるのか? その謎を解き明かすためスタッフはアマゾンのお口へと向かった……。 関係ないけど MacBook Air 2020 出ましたね。
なして? と思ったけど、インストール後プロセス起動前に以下を入れてたのが問題だった。 mysql_secure_installation は latin1 以外許さないとかそういうアレなの? キマリなのかしら。 /etc/my.cnf [client] default-character-set=utf8mb
MySQL 5.6/5.7 世代で絵文字とかハハパパあたりに苦しめられた人多い問題。 UTF8MB4 を利用する innodb_file_format innodb_large_prefix は ON Barracuda が取り込まれたので、項目が存在しなくなった フレームワークなどからのアクセスで時刻補正されると…
いーっつも忘れて過去の手順書を確認するので、ここに記載する! 新しいパラメータグループ作った後に最低限設定するのは以下。 UTF8MB4 を利用する InnoDB のカラム幅を 3072 だか 3074 いっぱいまで拡張する フレームワークなどからのアクセスで時刻補正さ…
GTID とかついてきて、そのまま他の環境に持ち込もうとするとうまく行かず。 「イラァ」としないためのメモ。 mysqldump -u ${ユーザ名} -p -h ${エンドポイント} --quick --single-transaction --skip-triggers --set-gtid-purged=OFF ${DB名} > ${ファイル…
Last_Error: Slave failed to initialize relay log info structure from the repository stop slave して reset slave して change master to で stop slave した時点のログを指定すればオッケーでした。 復帰できない場合は、mysqldump かなんかでログの位…
AWS 上で RDS 使ってて「UTC やんけ JST にしたろ!」みたいな記事は見るけど、生の MySQL ってそういえばどうなん?ってなったので、インストールから一式試してみました。 ロケ地:EC2@t2.micro MySQL 5.7.16 準備 [root@ip-172-31-25-109 ~]# yum update …
まじかよ知らなかったすげえっていう周回遅れの情報。 MySQL :: MySQL 5.6 リファレンスマニュアル :: 14.5.7 InnoDB ログファイルの数またはサイズの変更、および InnoDB テーブルスペースのサイズの変更 MySQL 5.6.8 の時点では、InnoDB ログファイルの数…