by shigemk2

当面は技術的なことしか書かない

MySQL

auto_incrementの解除について

ALTER TABLE `test_table` CHANGE `send_id` `send_id` INT( 11 ) NOT NULL 特別なSQLを投げるのではなく、changeをつかうこと。 ogawa7.blog.shinobi.jp

UbuntuでMySQL serverのパスワードを忘れたからって

別に自宅でごにょごにょ rootのパスワード忘れた stackoverflow.com qiita.com もうすこし調べて見る必要がありそう。 というか、パスワード思い出したからいいや。

alter tableの暗黙コミット

alter tableは暗黙コミットのもよう。 MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.3.3 暗黙的なコミットを発生させるステートメント

まずはuserから

よく打つコマンド。 覚えらんないので、rootユーザーから。mysql.userだけ覚えておけば。 mysql> select Host, User from mysql.user ;

min_examined_row_limitについて

スローログ関係のオプション。 5.6だと、 number 行より少ない行を検査するクエリーがスロークエリーログに書き込まれません。デフォルトは 0 なお、long_query_timeとの併用は可能であるが、このオプションを設定すると、long_query_time && min_examined_r…

MySQL docker my.cnfカスタマイズ

こんな感じでDockerfileを書いておく。conf/my.cnfはお好きにどうぞ。 FROM mysql:5.7 COPY conf/my.cnf /etc/mysql/conf.d/

aws-cliでつくろうRDS

作成。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…

Percona slow query log

slow query log関係のドキュメント。本家MySQLよりパラメータが増えている。より詳細なログを吐ける、とのこと。 Slow Query Log

Percona ログローテート

設定としては、一定以上のファイルサイズを超えたらバックアップ(max_slowlog_size)。ファイル名の後ろに数字がインクリメンタルにつく。一定数のバックアップファイルができたら番号の若い順から消えていく(max_slowlog_files) Slow Query Log Rotation and…

slow logをfluentdで転送するやつのアレ

ググルの面倒だからメモっておく。 RDS(Amazon) qiita.com github.com MySQL github.com docs.fluentd.org

MySQLのcreate userでポチポチ

MySQLのユーザー追加が覚えきらない。 CREATE USER '{username}'@"{from_domain(ip)}" IDENTIFIED BY "{password}"; ユーザーを追加しようとするとOperation CREATE USER failed forってなる。 REVOKE ALL PRIVILEGES, GRANT OPTION FROM '{username}'@'{fro…

docker-composerとMySQL、雑多メモ

メモです。 qiita.com docs.docker.com yosugi.hatenablog.jp stackoverflow.com github.com

docker-composeとMySQL

@mapk0y ありがとうございます。意図したとおりに動きました。キーワードはdocker-entrypoint-initdb.dでした。— shigemk2 (@shigemk2) 2016年3月18日 ポイントは、docker-entrypoint-initdb.dに.shや.sqlファイルを置くと、コンテナが出来上がった後にそれ…

MySQL インデックス メモ

MySQL :: MySQL 5.6 リファレンスマニュアル :: 8.3.1 MySQL のインデックスの使用の仕組み MySQL :: MySQL 5.5 Reference Manual :: 8.3.8 Comparison of B-Tree and Hash Indexes B-treeインデックスとHashインデックスだけ覚えておくのです。

MySQL replace

コメントに書いてあるのだけれど。 MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.2.8 REPLACE 構文 qiita.com UPDATE wp_posts SET post_content = REPLACE(post_content, 'olddomain.com', 'newdomain.com'); ココで使われているREPLACEがREPLACE構文…

Table 'performance_schema.session_variables' doesn't exist

stackoverflow.com こんなエラーに見舞われた Table 'performance_schema.session_variables' doesn't exist MySQL 5.7.10 MacOSX Yosemite mysql_upgrade -u root -p --force MySQL :: MySQL 5.6 リファレンスマニュアル :: 4.4.7 mysql_upgrade — MySQL テ…

MySQLのgrantとかで思い出すこと

stackoverflow.com アクセスする側のドメインでアクセスを制御したりできる。 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%.example.com' IDENTIFIED BY 'some_characters' WITH GRANT OPTION; FLUSH PRIVILEGES; stackoverflow.com The percent sign means al…

The server quit without updating PID file メモ

easyramble.com いろいろ原因があるけど、僕の場合は、複数のMySQLを入れていたのが原因だったと認識しています。(homebrewと後忘れました) とりあえず、MySQLのプロセスをkillしてたら、起動できました。

KVSのTTLについて

stackoverflow.com qiita.com KVSにはTTLという機能があり、その値よりも古いデータは自動的に削除してくれる。削除自体にはいろいろ気をつけないといけないポイントがあるらしいけども。 で、MySQLとかにはこのTTLの機能はデフォルトでは無いらしい。そうい…

論理削除は死亡フラグという話をメモる

メモるだけ。 blog.mogmet.com 変な名前の削除フラグを立てると「これなに?」ってなる でもdeleteよりは圧倒的に早い

郵便番号のデータをMySQLにぶっこむ 改

www.shigemk2.com 気づいたらCSVファイルがLZH圧縮からZIP圧縮に変わっていた。 $ wget http://www.post.japanpost.jp/zipcode/dl/kogaki/zip/ken_all.zip それだけ。あとは、nkfで文字コードをUTF-8にするとかLOAD DATA INFILEとかは変わらない。

MySQL パフォーマンスのやつ

O'Reilly Japan - 実践ハイパフォーマンスMySQL 第3版 もろもろ。

Got error 124 from storage engine

わりと巨大なマージテーブルのcreate table時に、インデックスを貼る 条件はこれだけ。具体的にはselect出来ない。countは出来たけど。テーブル作成時にインデックスを貼らなければ、この問題は起きないもよう。 なお、create table時にインデックスを貼らず…

MySQLの1168エラー

前もやった気がするんだけど。 ERROR 1168 (HY000): Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist マージテーブル絡みのエラー。 charset マージしたいテーブルが壊れている マージしたいテーブル…

MySQLの区切り文字

MySQLの区切り文字 ファイル出力だとinto outfileとか使えばいいんだけど、コマンドライン上でカンマ区切りとかにしたいときは、 sed s/\t/,/g などを使うと良い。というか、コマンドライン上でカンマ区切りにしたいとき、そういうオプションはmysqlにはない…

Got a packet bigger than 'max_allowed_packet' bytes

SQL実行でも起きるらしいけど、レプリケーションでも起きたりする。 SQL文が長いとか、SQL文でやりとりしようとしているデータの量が多いとか。 show variables like 'max_allowed_packet'; /etc/my.cnfのmax_allowed_packetの問題だったりするので、この値…

master.infoってなに

マスタからのバイナリログを読み込むためのスレッドの情報を保存したもの。 /var/lib/mysql/master.info に情報を保存 マスタに接続するために必要なアカウント情報も記録 MySQLレプリケーション備忘録 master.infoとrelay-log.info | Livingdeadの日記 | ス…

MySQLのbinlogを見たい

基本 $ mysqlbinlog mysql-bin.000100 > /tmp/statement.sql 時間指定 $ mysqlbinlog xxxxx-bin.003265 --start-datetime="2009-02-03 15:50:00" --stop-datetime="2009-02-03 16:00:00" > /tmp/3265_2.log mysqlbinlog: unknown variable 'default-characte…

MySQLでレプリケーションを絞る

5.7以前 レプリケーション対象を絞りたいとき - MySQL Casual Advent Calendar 2010 - MySQL Casual /etc/my.cnfでごにょごにょ。 5.7 以降 コマンドでごにょごにょ。 MySQL :: MySQL 5.7 Reference Manual :: 13.4.2.2 CHANGE REPLICATION FILTER Syntax

MySQLのレプリケーション遅延周りのリンク

show slave statusで確認 show slave statusのコマンドに従えばいいと思う。 MySQLレプリケーションの動作確認と不具合時の復旧方法 - 三十路エンジニアの備忘録+αd.hatena.ne.jp Seconds_Behind_Masterを確認したらいいと思う。0なら遅延なし。1以上なら遅…