1967 件中 801 - 810 件を表示
« 前の 10 件 | 次の 10 件 »
Displaying posts with tag: MySQL (reset)
AWS上でMySQL5.7動作環境を最速で作る方法(Generic binaries使用)(※5.6追記あり)

 ビルドするほどに時間はかからず、rpmで入れるよりは自由度が高い(自分のローカルでの動作、複数バージョンの動作)ということで、Generic binariesを使って、とにかく最短でMySQL 5.7 の2つのバージョンを入れてみます。

 環境はいつもの t2.micro です。
今回からは、(デフォルトではディスク10GBだけど30GBまでは無料お試し枠に入っているということで)ディスクを30GBにしました。
10GBだと、MySQL 5.7 をダウンロード&展開(=インストール)のセット3つめで満杯になります。ちょっと窮屈。

[さらに読む]
Group Replication を試す(2) ロックの挙動

テスト用のテーブル

mysql> CREATE TABLE grplt.tbl (pk SERIAL, col1 int, who_update varchar(10));
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO grplt.tbl (col1, who_update) VALUES (1, 'node1') , (2, 'node1'), (3, 'node1');
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0

mysql> SELECT * FROM grplt.tbl;
+----+------+------------+
| pk | col1 | who_update |
+----+------+------------+
| 1 | 1 | node1 |
| 8 | 2 | node1 |
| 15 | 3 | node1 |
+----+------+------------+
3 rows in set (0.00 sec)

いつものデッドロック

同じサーバに対して、入れ子の行ロックを取る2つのトランザクションを実行するパターン。
ERROR 1213 (40001): Deadlock found when trying to get lock; try restarting transaction …

[さらに読む]
MySQL 5.7 を t2.micro でもビルドできた!

 ひとつ前の日記で、「MySQL 5.7 は、ビルドのために大量にメモリを要求するので、AWS Red Hat の t2.micro、すなわちメモリ 1GBではビルドできない」という趣旨のことを書きました。その時点での対応策として、t2.medium というメモリ4GBの環境を利用することで、ビルドに成功しました。

 その後、「t2.micro は、デフォルトではswapファイルの設定が無効になっているよ」と、詳しい方から教えていただき、設定の後に t2.micro でも MySQL 5.7 …

[さらに読む]
MySQL 5.7 のビルドにトライ ~ 5.6とは大違い

 ひとつ前の日記までで、MySQL 5.6 のビルドが快調にできたことに気をよくして、MySQL 5.7 のビルドにも挑戦してみました。5.6.35 と 5.6.34 の差(ビルド環境や方法に違いはない)と同じように バージョン番号関係の部分を 5.7.17 に変えれば良いのだろうと考えていたら、大違い。

MySQL5.6をビルドして動作させるのと違うところ

  • boost の 1.59 が要求される。Red Hat 7.3 のyumでは boost 1.53 しか入らないので一工夫必要
  • make …
[さらに読む]
ふたつのバージョンのMySQLを同時に動かす on AWS Red Hat 7.3

 ひとつまえの日記の続きです。
最近、MySQL のインストールは rpm(CentOS)、あるいは MySQL Installer(Windows)に頼りっきりで、手動インストールからも、すっかり遠ざかっておりました。そんな折に、簡潔でシンプル*1な yoku0825さんの記事に助けられて、そして年末に「 …

[さらに読む]
MySQLをビルドする on AWS Red Hat 7.3

yoku0825 さんが、Software Design 誌 2016年6月号に、最近のMySQLのビルドのしかたを簡潔に書いてくれていたのを見て、ずっとやりたかったのが、半年が経ち、年を越え。こんなに時間が経つなら忘れてしまえばいいのに、と思うのですが、先延ばしにすればするほど忘れられなくなるのが、この性分。ようやく年貢を納めることができた気分なので、メモ書き程度にここに残しておこうと思います。

 この年末年始に、AWSにやっと触ってみました。「 …

[さらに読む]
Group Replication を試す(1) 導入編

MySQL 8.0 で入ると噂されていた、Group ReplicationがMySQL 5.7.17 でリリースされました。
5.7 GAとは何だったのか。。。 とはいえ、早く使えるようになったのは、うれしいです。
※ Group Replication は追加プラグインとして提供されているため、明示的に使わない限り影響を及ぼすことはありません。

-bash-4.1$ ls /usr/lib64/mysql/plugin/group_replication.so
/usr/lib64/mysql/plugin/group_replication.so

Group Replication とは

MySQLのマスターサーバの冗長化を目的とした機能です。

  • マルチマスター(マルチライター)のレプリケーション構成がとれる
  • 複数サーバに同時に書き込みが可能。HAProxy などで分散。
[さらに読む]
performance_schema を top っぽく見るツール ps-top

とある企業のDBA @yoku0825 さんに ps-top というものを教えてもらったので試してみました。 ps は 「Performance Schema」のps です。MySQL の パフォーマンス統計である performance_schema の情報をtopコマンドのように表示してくれる。

インストールps-top は go で書かれている。 自分の管理外のサーバだと、ソフトウェアをインストールするのに躊躇するので、ポータブルな(バイナリをコピーすれば動く)goなのはありがたいですね。


$ export GOPATH=$HOME/go
$ mkdir $GOPATH
$ go get -u github.com/sjmudd/ps-top/cmd/ps-top

使い方


$ $HOME/go/bin/ps-top --help
pstop - Copyright (C) 2014-2015 Simon J Mudd
Top-like program to show MySQL activity by using information collected …
[さらに読む]
MySQLのCOUNTを速くする(?)SQL1本ノック その2

この記事は MySQL Casual Advent Calendar 2016 の23日目の記事です。
そしてどうやら、 日々の覚書 の400本目の公開記事です。そんなに書いてたのか。。

前回 のあらすじ。


mysql57> SHOW CREATE TABLE game_score\G
*************************** 1. row ***************************
Table: game_score
Create Table: CREATE TABLE `game_score` (
`seq` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`game_id` int(11) NOT NULL,
`user_id` int(11) NOT NULL,
`play_end_time` datetime NOT NULL,
`score` int(11) NOT NULL,
PRIMARY KEY (`seq`),
KEY `game_id` (`game_id`),
KEY …
[さらに読む]
MySQLのCOUNTを速くする(?)SQL1本ノック その1

この記事は MySQL Casual Advent Calendar 2016 の19日目の記事です。

「MySQLのCOUNTが遅いなー」って言うと、「トリガーでサマリーテーブル作ったら?」と言われること、多くありませんか? 特に @soudai1025 に言われる率が高い気がしています(個人の感想です)

[さらに読む]
1967 件中 801 - 810 件を表示
« 前の 10 件 | 次の 10 件 »