MySQL
memo TDE Transparent Data Encryptionの略。 保存データを暗号化する データはストレージに書き込まれる前に自動的に暗号化され、ストレージから読み込まれる時に自動的に復号化する 透過 RDSにおいては、TDEはOracle/SQL Server/MySQLなどに対応 透過的暗…
mysqldump create-options MySQL 固有のテーブルオプションを CREATE TABLE ステートメントに含めます。 これをつけないとauto incrementとかがなくなってしまう。 https://dev.mysql.com/doc/refman/5.6/ja/mysqldump.html
mysqldump quick option このオプションは大規模なテーブルのダンプに便利です。これは mysqldump に対して、テーブルのすべての行のセットを取得して、書き出す前にメモリーにバッファリングするのではなく、サーバーから 1 行ずつ行を取得することを強制し…
memo processlist show processlist; の代替。 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
100GBのDBをリストアするのにかかる時間の目安はおおよそ2時間 nohupでバックグラウンドジョブとして実行したほうが良い リストアにsourceを使うとめっちゃ時間かかる gzするとバックアップが遅くなるかもしれない yakst.com
rds memo 基本だけど。パラメータグループはDBのパラメータ設定で、オプショングループはDBの追加設定。チューニングが必要なのはパラメータグループの方。
Installing MySQL on Linux LinuxにMySQLをインストールする公式 プロトコルはhttps https://dev.mysql.com/doc/refman/5.5/en/linux-installation.html https://dev.mysql.com/doc/refman/5.5/en/linux-installation-native.html
MySQL source code bazaarかと思ったらgitもいけるっぽい https://dev.mysql.com/doc/refman/5.6/ja/installing-development-tree.html
mysql 5.7.19 ubuntu 17.04 5.7でrootを空パスワードにすると、ログインできなくなるのは、認証のプラグインのデフォルトでauth_socketなるものを使っているから。 mysql_native_passwordに変更するといいらしく。 ネイティブのパスワードハッシュ化方式を使…
外部キーのドキュメント。 CONSTRAINTが肝で、外部キーの先で定義していないIDで外部キーのテーブルをつくれない https://dev.mysql.com/doc/refman/5.6/ja/create-table-foreign-keys.html
読み取り専用オプション read_onlyとの違いは謎。 nulab-inc.com MySQL :: MySQL 5.6 リファレンスマニュアル :: 14.12 InnoDB の起動オプションおよびシステム変数
AnsibleでMySQLのDBのユーザー管理/権限管理ができる。ことを知る。 mysql_user - Adds or removes a user from a MySQL database. — Ansible Documentation
ubuntu 17.04 雑にmysql-serverをaptでインストールして、mysql -uroot してもだめで、sudoしないといけない askubuntu.com
mysqldump -u <local_user> \ --databases <database_name> \ --single-transaction \ --compress \ --order-by-primary \ -p<local_password> | mysql -u <RDS_user> \ --port=<port_number> \ --host=<host_name> \ -p<RDS_password> mysqldumpからパイプして、RDSのホストにリストアをぶっこむ。mysqldumpで作ったダンプファイルをリダイレクトしてもい</rds_password></host_name></port_number></rds_user></local_password></database_name></local_user>…
MySQLのダンプファイルをRDSへリストアしようとするときに、SUPER権限が必要だよって言われる事案。 ビューテーブルのDEFINERを消すとうまくいく。 https://forums.aws.amazon.com/thread.jspa?messageID=279776
MySQL :: Other MySQL Documentation ↑にあるとおもったら、dumpしかなくって不完全なので、GitHubのtest_dbを使うことにした。 ちゅーか、mysql -uroot < employees.sql せいっちゅーて、本家にemployees.sqlがないってどういうことなのでしょう。 github.c…
あとでちゃんと読む。 MySQL :: MySQL 5.7 Reference Manual :: 9.2.1.1 Speed of SELECT Statements
すっごい久々。 blog.trippyboy.com 現在の日付・時刻を取得する - MySQL 逆引きリファレンス www.dbonline.jp
--execute=statement の略
SELECT文を使う時に条件を指定することで取得するカラムを絞ったり取得するデータの条件を指定することができますが、テーブルから一部を取り出したものに名前を付け、あたかも独立したテーブルにように扱うようにしたものがビューです。 Oracleだとよく見る…
ALTER TABLE `test_table` CHANGE `send_id` `send_id` INT( 11 ) NOT NULL 特別なSQLを投げるのではなく、changeをつかうこと。 ogawa7.blog.shinobi.jp
別に自宅でごにょごにょ rootのパスワード忘れた stackoverflow.com qiita.com もうすこし調べて見る必要がありそう。 というか、パスワード思い出したからいいや。
alter tableは暗黙コミットのもよう。 MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.3.3 暗黙的なコミットを発生させるステートメント
よく打つコマンド。 覚えらんないので、rootユーザーから。mysql.userだけ覚えておけば。 mysql> select Host, User from mysql.user ;
スローログ関係のオプション。 5.6だと、 number 行より少ない行を検査するクエリーがスロークエリーログに書き込まれません。デフォルトは 0 なお、long_query_timeとの併用は可能であるが、このオプションを設定すると、long_query_time && min_examined_r…
こんな感じでDockerfileを書いておく。conf/my.cnfはお好きにどうぞ。 FROM mysql:5.7 COPY conf/my.cnf /etc/mysql/conf.d/
作成。xxxxxの部分は適宜。あと、自分のcredentialのロールは確認しましょう。 $ aws rds create-db-instance --db-instance-identifier xxxxx \ --db-parameter-group-name xxxxx \ --allocated-storage 20 --db-instance-class db.t1.micro --engine mysql…
slow query log関係のドキュメント。本家MySQLよりパラメータが増えている。より詳細なログを吐ける、とのこと。 Slow Query Log
設定としては、一定以上のファイルサイズを超えたらバックアップ(max_slowlog_size)。ファイル名の後ろに数字がインクリメンタルにつく。一定数のバックアップファイルができたら番号の若い順から消えていく(max_slowlog_files) Slow Query Log Rotation and…
ググルの面倒だからメモっておく。 RDS(Amazon) qiita.com github.com MySQL github.com docs.fluentd.org