Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 1601 to 1610 of 3187 « Previous | Next »
[勝手に補足]DBアタマアカデミー第1回記憶装置のトレードオフとバッファの考え方

さてみなさん、ご無沙汰の木村です。

私は以前からデータベース各種連載を[勝手に補足]してきたのですが、どうやらミックさんの連載については
第1回を補足していなかったみたいなので、四年たってからやっとの補足です。。。。

幸い元記事はWEB+DB PRESSの総集編でも読めますし、以下のWeb版も読めますので、是非チェックしてみてください!

DBアタマアカデミー

さて、勝手に補足の時間です(Web版を元にしてます)♪雑誌記事一回分を2〜3回に分割してWeb版になってます。(今回は(1)〜(3)で(2)へのツッコミ)

…

[さらに読む]
MySQLの外部キー例:ERROR 1452

Original post - http://anothermysqldba.blogspot.com/2014/08/mysql-foreign-keys-example-error-1452.html

だから私は、フィールドを更新する必要が扱っ今日の状況に偶然出会ったため、ユーザは、関連する外部キー制約をそうすることができませんでした。 

このブログ投稿では、外部キーを示すとどのようにあなたがそうしなければならない場合は、それらを更新するための簡単​​な例であると。 

まず私たちは簡単なテーブルを作成してみましょうと、ランダムなデータを移入。 

CREATE TABLE `table_w_code` ( 
`SOMECode` varchar(50) COLLATE utf8_unicode_ci NOT NULL, 
`NameofCode` varchar(50) COLLATE …

[さらに読む]
innodb_large_prefixを使ってERROR 1071を回避する

MySQLのInnoDBストレージエンジンのテーブルの長いvarcharカラムを含むカラムにインデックスを生成しようとしたことがあれば、このエラーを見たことがあるだろう。

ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes

文字数制限は、使っている文字コードに依存する。例えば latin1 であればインデックスを生成できる最大カラムは varchar(767)であるが、 utf8 の場合は varchar(255) までである。 インデックスあたり、3072バイトという別の制限もある。767バイトはカラムごとの制限なので、複数のカラムを(それぞれが767バイト以下で)3072バイトまで格納できる。 (MyISAMは少々異なり、インデックスに対し1000バイトの制限があり、カラムごとの制限はない)。

…

[さらに読む]
色んなログ、読む時間のある人いる? MariaDBのログ概要

MariaDB 10.1の新機能を触っている時、(馬鹿げていると思うことの1つだが)一般ユーザはスロークエリログを無効にする方法が分からないのではないかと気づいた。

この機能を実装したりドキュメントを書いていて、色々なログの情報がバラバラになっていて、それらを有効にしたり無効にするのが意外と難しいのではないかとも思った。

これを解決するため、MariaDBのドキュメント(KB)に、MariaDBにもMySQLにも役立つだろうと思って「Overview of the MariaDB logs」というエントリを作った。

そのコピーがこの記事だ。コメントや追加して欲しい内容があれば、 …

[さらに読む]
Percona ServerでMroongaの./configureに失敗したら

Percona Server 5.6.19にMroonga(故あってGroonga 3.1.0のnightly + Mroonga 3.10だけど)を載せようとしたら、configureスクリプトが転けた。


$ ./configure CFLAGS=-O3 CXXFLAGS=-O3 PKG_CONFIG_PATH=/usr/groonga/3.1.0.20131209/lib/pkgconfig --with-mysql-source=/usr/local/src/percona-server-5.6.19-67.0 --with-mysql-config=/usr/local/percona5619/bin/mysql_config
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
..
checking mysql source... yes
checking mysql_config... /usr/local/percona5619/bin/mysql_config
checking for libmysqlservices.a directory... configure: error: libmysqlservices.a is not found in </usr/local/percona5619/lib/mysql/> and </usr/local/percona5619/lib/mysql/mysql/>


libmysqlservices.aが見つからないんだって。
…

[さらに読む]
MariaDB: バイナリログイベントの選択的スキップ

我々が興味深いと思うMariaDBの機能を紹介するシリーズ、最初の記事では、バイナリログイベントのレプリケーションを選択的にスキップする機能を取り上げる。この機能は、MariaDB 5.5と10から使用可能だ。

…

[さらに読む]
MySQLのSQLでNagiosに値を戻すスクリプト書いた

ぱっと見で見当たらなかったので書いた。

SQLで取得した値を評価して、Nagiosさんに戻り値を返すスクリプト。

https://github.com/yoku0825/my_script/blob/master/nagios_for_mysql.pl

こんな風に使う。


$ ./nagios_for_mysql.pl --user root --password xxxx --host 127.0.0.1 --port 64056 --sql "SELECT COUNT(*) FROM information_schema.processlist WHERE state IN ('update', 'updating') AND time > 10" --warning 10 --critical 20
$ echo $?
3


走行中(というかgrn_io_lock待ちだ)のスレッドの数を数えてみたり。


$ perl ./nagios_for_mysql.pl --user root --host 127.0.0.1 --port 64056 --sql "SELECT table_rows FROM information_schema.tables WHERE table_schema = 'mysql' AND …
[さらに読む]
max_user_connectionsを設定して、MySQLのダウンタイムを回避しよう

July 29, 2014 by Peter Zaitsev

MySQLのダウンタイム発生の、よくある原因の一つは、コネクション数が不足することだ。こんなエラーを見たことはないだろうか?

ERROR 1040 (00000): Too many connections

MySQLをある程度長く触っている人なら、間違いなく見たことがあるだろう。成功したトランザクションと失敗したトランザクションが混じって一時的に見えるエラーが発生したり、しっかり監視していない場合に限って、いくつかのプロセスが正常に実行されず色々なおかしな現象を引き起こしたり、なかなかに厄介なエラーだ。

…

[さらに読む]
MySQL 5.6 でのレプリケーション遅延は危険

MySQL 5.6 の検証中に MySQL 5.5 とは違うタイプのレプリケーション遅延を見つけたので紹介します。

MySQL のレプリケーションのおさらい

MySQL のレプリケーションは次のような仕組みで動作しています。

  • マスターの更新トランザクションが binlog を書く
  • スレーブの I/O スレッドがマスターに接続し、 binlog を取得し、 relaylog を書く.
    • マスター側はスレーブからの接続を受け付けると(dump スレッド)、指定された場所から最新までの binlog を転送する
    • binlog が追記されるのを待ってさらにスレーブに送る
  • スレーブのSQLスレッドが relaylog を再生する

MySQL 5.5 でよくあったレプリケーション遅延

…

[さらに読む]
mysqlnd_msによるシンプルなMySQLのマスタHA

2、3日前にmysqlnd_msをフィリピンのPHPユーザーグループに発表できたことをうれしく思っている。MySQLのマスタ-スレーブ構成での、mysqlndプラグインは、mysqlndエクステンション(訳注: mysqlndはPHP言語に対するPHPライセンスのMySQLネイティブドライバであり、PHP5.3以降には組込となっている)への透過的レイヤである。 これによって、アプリケーションを一切変更することなく、Read-Writeを分離したりスレーブへの読取りを負荷分散させたりできる。 しかし、このプラグインで、高可用の1つのパターンが実現できることをご存知だろうか? …

[さらに読む]