1991 件中 871 - 880 件を表示
« 前の 10 件 | 次の 10 件 »
Displaying posts with tag: MySQL (reset)
MySQL 8.0.0からmysql_install_dbがなくなってる、ついでにbinディレクトリ探求

日々の覚書: MySQL 5.7.6でデータベースの初期化が変わる mysql_install_dbからmysqld --initialize

1年半の時を経て、ついに消えた様子。
(MySQL 5.7の時点で、mysql_install_dbはscriptディレクトリーからbinディレクトリーに移動になってた)


$ ll bin/mysql_install_db
ls: cannot access bin/mysql_install_db: No such file or directory


あと、SDIファイル関連ぽい ibd2sdi とかいうファイルがあるけど使い方はいまいち謎。


$ bin/ibd2sdi -d >(cat -) data/ibdata1
[INFO] ibd2sdi: SDI from both copies is empty.


それ以外は特になさげ


$ diff <(ls -1 /usr/mysql/5.7.14/bin) <(ls -1 …
[さらに読む]
MySQL 8.0.0でmysqlスキーマの中身がほぼ全部InnoDBになった

MySQL 8.0でmysqlスキーマの中身が全部InnoDBになった。


5.7だと↓だったのが、

mysql57> SELECT table_name, engine FROM information_schema.tables WHERE table_schema = 'mysql' ORDER BY table_name;
+---------------------------+--------+
| table_name | engine |
+---------------------------+--------+
| columns_priv | MyISAM |
| db | MyISAM |
| engine_cost | InnoDB |
| event | MyISAM |
| func | MyISAM |
| general_log | CSV |
| gtid_executed | InnoDB |
| help_category | InnoDB |
| help_keyword | InnoDB |
| help_relation | InnoDB |
| help_topic | InnoDB |
| innodb_index_stats | InnoDB |
| innodb_table_stats | InnoDB |
| …
[さらに読む]
MySQL Group Replication DMR(5.7.14)

MySQL5.7.14のGroup Replication DMR版が先月リリースされていたので、基本的な動作確認をしました。
まだ、DMR版なので前回の5.7.10とまた微妙に異なっていて、
group_replication_peer_addressesがgroup_replication_group_seedsに代わっていたり、
group_replication_recovery_userやgroup_replication_recovery_passwordが無くなっていたりします。

MySQL Group Replication: A Quick Start Guide
http://mysqlhighavailability.com/mysql-group-replication-a-quick-start-guide/

MySQL5.7.10版での検証: MYSQL GROUP REPLICATION
http://variable.jp/2016/07/18/mysql-group-replication/

[さらに読む]
MySQL で utf8 と utf8mb4 の混在で起きること

MySQL を UTF-8 で使おうと思ってハマりがちなのは charset utf8 を指定してしまうことです。

MySQL の UTF-8 には歴史的事情により utf8 と utf8mb4 の二つあります。

UTF-8 は1バイト〜4バイトで1文字が構成される文字コードですが、MySQL の utf8 は4バイト文字を扱うことができません。ハマりたくなければ utf8mb4 を使いましょう。

utf8 を使ってしまった場合に4バイト文字がどのように扱われるか、自分でもうろ覚えだったのでメモしておきます。

登録

接続が utf8mb4 でカラムが utf8mb4

あたりまえですが、そのまま登録されます。

mysql> insert into utf8mb4 (c) values ('美味しい🍣と🍺');
mysql> select * from utf8mb4;
+-------------------------+
| c                       |
+-------------------------+
| 美味しい🍣と🍺 …
[さらに読む]
FLUSH PRIVILEGESやFLUSH TABLESはバイナリーログに書かれるのでgtid_executedに記録されるよ

や、まあ、バイナリーログに吐かれるのはマニュアルに書いてあってそうなんだけれども、GTID振られるのは失念してた。

一つだけマニュアルが誤解を招く表現。

デフォルトでは、サーバーは FLUSH ステートメントをバイナリログに書き込み、それらがレプリケーションスレーブにレプリケートされるようにします。ロギングを抑制するには、オプションの NO_WRITE_TO_BINLOG キーワード、またはそのエイリアス LOCAL を指定します。

注記
FLUSH LOGS、FLUSH TABLES WITH READ LOCK (テーブルリスト付き、またはなし)、および FLUSH TABLES tbl_name ... FOR EXPORT は、スレーブにレプリケートされると問題が発生するため、どのような場合でもバイナリログに書き込まれません。

[さらに読む]
mikasafabric for MySQLのビルド

mikasafabric for MySQL が何なのかについては こちら

取り敢えずビルド方法のメモ。雑に。


#!/bin/bash

version="0.1.1"
dirname="mikasafabric-${version}"

rm -rf ~/rpmbuild
mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

if [ -d ~/$dirname ] ; then
rm -rf ~/$dirname
fi
git clone https://github.com/gmo-media/mikasafabric.git ~/$dirname
cd ~/$dirname
git checkout ${version}
cd $OLDPWD

tar czf ~/rpmbuild/SOURCES/${dirname}.tar.gz $dirname
rpmbuild -bb ~/$dirname/mikasafabric.spec


ビルドにはpython-develとrpm-buildが必要。実際にmikasafabricを動かすにはmysql-connector-pythonが必要。CentOS …

[さらに読む]
mysqlslavetrxによるGTIDベースレプリケーション時のエラーSKIP処理

ログポジションベースのレプリケーションの場合は、レプリケーション障害発生時にスレーブでSKIP処理を容易に行う事ができましたが、GTIDモードの場合は以下のように空のトランザクションを実行して、エラー対応をする必要がありました。

mysqlslavetrxを利用しない場合の例

root@localhost [sakila]> stop slave;
Query OK, 0 rows affected (0.03 sec)

root@localhost [sakila]> SET GTID_NEXT = "3edaa0b8-3e39-11e4-9df1-080027f5bf08:54";
Query OK, 0 rows affected (0.00 sec)

root@localhost [sakila]> begin; commit;
Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

root@localhost [sakila]> SET GTID_NEXT = "3edaa0b8-3e39-11e4-9df1-080027f5bf08:55";
Query OK, 0 rows affected (0.00 sec)

root@localhost [sakila]> begin; commit;
Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

root@localhost [sakila]> SET …
[さらに読む]
オープンソースカンファレンス(OSC)2016-Kyoto 参画

京都で開催された、オープンソースカンファレンス(OSC)2016-Kyoto に参加してきました。
今までは、関西開催の京都の部、みたいな感じで、OSC-Kansai/Kyoto という呼び方でしたが、このたび実績を重ねてめでたく OSC-Kyoto となったとのことです。

http://www.ospn.jp/osc2016-kyoto/


暑い夏の京都。今回は、京都駅からまずバスで会場であるリサーチパークに向かってみました。
京都のバスは路線が多く、入り組んでいるため、非常にわかりにくいです。

[さらに読む]
MySQL プロトコル上のテキストの闇

MySQL 5.7 で JSON 型が追加されたのに関連して、私がメンテナをしている MySQL ドライバーで罠にハマったので、 MySQL のテキストプロトコルの闇を書き残しておくことにします。

Text Resultset

MySQL にクエリを投げるコマンドが COM_QUERY で、そのレスポンスとして返されるのが Text Resultset と呼ばれる一連のパケットです。その中身は次のようになっています。

  • column count (整数1つだけのパケット)
  • column definition * column count (各カラムの定義)
  • EOF
  • row * N (結果行数分)
  • EOF

この記事で注目するのは column definition パケット ( …

[さらに読む]
SHOWステートメントをSHWOとタイポしてしまう

SHOWってshwoってタイポしませんか? わたしはします。

mysqlコマンドラインクライアントでの改変は、やった。- 日々の覚書: mysqlコマンドラインクライアントでuseの代わりにcdを使う
クエリーリライトプラグインも、やった。- 日々の覚書: 過去、現在、未来、全宇宙に存在する全てのクソクエリーを、生まれる前に自分の手でカジュアルに消し去ること(仮)Handlerさんコンニチワ (lsステートメントとかcatステートメントとかやった)

[さらに読む]
1991 件中 871 - 880 件を表示
« 前の 10 件 | 次の 10 件 »