MySQL

Diary

MySQL Workbenchの後継であるMySQL Shell for VS Codeを使ってみる

概要MySQL Workbenchのサーバーをモニタリングする機能がVS Codeのプラグインとしてリリースされているようなので軽く動作を見てみます。設定ssh tunnelの設定は相変わらずうまく接続できなかった(MySQL Workbe...
MySQL

UbuntuでMySQLを8.0.34から8.1.0へアップグレード。Innovation Releaseを使う設定。

背景MySQL Innovation Day Tokyo 2023に行ってきました。(オフィスから徒歩8分なので楽!)2023年7月18日 (今から約1ヶ月前)にMySQL初のInnovation Releaseが行われました。バージョンは...
Ruby on Rails

末尾の半角スペースで困惑:ActiveModelとMySQLの連携問題

概要ActiveModelのuniqueがあるアトリビュートの末尾に半角スペースがあると挙動がおかしくなるケースがありました。問題以下のようにcodeがユニークなアトリビュートを定義してあるとします。class Product < Appl...
Ruby on Rails

Rails + MySQL 8でngramを用いたfulltext index

Railsのmigrationで普通にfulltext indexを付ける場合には以下のようにすると思いますが、普通のfulltext indexではngramが使われないので日本語の全文検索をする場合には全然マッチしません。class A...
AWS

このBlogのホスティングを自宅サーバからLightsailに移行しました

背景自宅サーバで運用していましたが、Raidカードが壊れてOSが起動できなくなってしまいました。調達にも時間がかかるので、取り急ぎデータをサルベージしてどこかで動かす必要がありました。Lightsailが安いのでこの際に移行してしまいます。...
docker

docker-compose経由でMySQLのデータをバックアップとリストア

Backupdocker-compose run --rm app bash -c 'mysqldump -u root --password=${MYSQL_ROOT_PASSWORD} -h ${MYSQL_HOSTNAME} --al...
AWS

present in INFORMATION_SCHEMA’s INNODB_SYS_TABLES table but missing from TABLES table

概要RDSをmysql 8.0にアップグレードしようとしたらエラーPrePatchCompatibility.logに以下のようなエラーが出ました。(xxxxxxxはデータベース名)17) Schema inconsistencies re...
MySQL

mysqlにてユーザを追加するときのクエリーテンプレ

概要毎回ググってクエリーを作るのが面倒なのでメモ。ユーザを作って、そのユーザはあるDBのCRUDと、スキーマのmigrationを出来るようにするという最低限の権限を付与。メモ前提 ユーザ名: newuserパスワード: password ...
docker

railsをdockerで構築して、Host ‘172.18.0.5’ is not allowed to connect to this MySQL server

概要dockerをクリーンインストールしたら繋がらなくなったコードを追っていく必要あって、ちょっと面倒だったトレース調べた流れmysqlの権限が無くなっているっぽいから、docker-compose execして、mysqlの中身を見てみる...
MySQL

久しぶりにmysqltuner

概要mysqltunerは、MySQLの統計情報を使ってパフォーマンスチューニングのアドバイスをしてくれる。最近はCVE(セキュリティ情報)も教えてくれるみたい。調べた背景は、64GBのRAMが載ったApacheやbatchプログラムが共存...