カテゴリー別アーカイブ: MySQL

バルクアップデート

大量のアップデート文を流すときに
速度改善で役立つSQL

cakephp仕様だけど、別にSQL文はどこでも使えそう

【MySQL】DBのダンプファイルから任意のテーブルのみリストアする方法

DBの全てのテーブルのダンプを取得したけど、
容量がデカすぎる、、、さらには、その一部のテーブルのみ必要

そんなときに役立ったのがこちらのコマンド

環境は
CentOS6
MySQL

mysqlなどの簡単な監視&再起動

AWSでWordPressを構築したのだけれど
恐らくメモリ不足により、MySQLが時々落ちる・・・

swap領域の作成など対策をしてみたけれど
やっぱり落ちる。。。

ってことで、とりあえずMySQLを監視して
落ちてたら、起動させるクーロンで対応してみたのでメモメモ

mysqldのところをapacheなどに変えれば応用が可能だけれど
あくまで簡易版なので、趣味程度のサイトならこれでいいかも。

grep -v grep ・・・ grepの結果からgrepの文字列を対象外にする
grep -q mysqld ・・・mysqldの文字列のありなしのみを返す
a || b ・・・ a の値が真の場合はb は無視。偽の場合はbを実行

【WP】検索機能で全角、半角を区別させない

wordpressの検索機能のデフォルトだと

全角と半角を区別してしまうため検索にひっかからない。

たとえば「A」と「A」は別の文字とみなされてしまう。

そんなときに大活躍するのがこれだっ!!

COLLATE utf8_unicode_ci

こちらテーブルやカラムなどに指定できるらしいのだが

これを付けると、半角全角、大文字小文字だけでなく

○数字は濁音なども同一視してくれるらしい、びっくりっ!!

【WP】自作でMySQLとソースのバックアップを取得

WordPressには、バックアップ用の便利な

プラグインが存在するけれど、

自作でも簡単にバックアップ取得できるのでメモメモ

MySQLがよく落ちる(複数WPの影響?AWS?)

なんかMySQLがよく落ちるから、

とりあえず再起動して放置してたんだけど

MySQLのエラーログみたら、なんか書き出されてたので

ちょっと対応してみたのでメモメモ

はたして、解決するのか?!

■ 環境 AWS t1.micro
■ WP 7個ほど動かしてる

こちら、はかれてたログ内容(/var/log/mysqld.log)

とりあえずmy.cnf(/etc/my.cnf)に以下2行を追加してみる。

mysqlを停止してからib_logfile0、ib_logfile1ファイルを
削除(またはリネーム)してから再起動!

これで解決しなかったら、swap領域を作成するとかかなぁ、、

・・・

・・・

・・・

見事に解決しなかったのでw
swap領域を作成してみる!

AWSのEC2インスタンスでt2.microを選択したのだけれど
デフォルトでは、swap領域がなんとゼロ

freeコマンドで確認してみると

早速、スワップ用のディレクトリとファイルを作成
今回は、「/var/swap」ってとこに作ったけれど、こちらはお好みで。

次に、作成したファイルのフォーマットと有効化

ここまでできて、改めてfreeコマンドで確認してみると

無事にswap領域が確保されてるよー

最後に、起動時に自動でスワップが割り当てられるように設定

もうMySQLが落ちませんようにー

【MySQL】ユーザ作成

localhostを指定せずにユーザ作成して

接続できずに、ちょっとハマったのでメモメモ

userは「’user_name’@’host_name’」の形式で

host_nameは’%’でワイルドカード指定できるけど

‘localhost’は別途、設定しておかないと

仕様の関係上、mysqlに接続できないので注意!!

【MySQL】起動失敗 MySQL Daemon failed to start.

AWSにサイトを構築中

最初、MySQL5.6をインストールしたんだけど

postfixやdovecotを入れようと思ったら

↓こんなエラーが出て、インストールに失敗する
どうやら、 MySQL5.5のものと競合するとかで怒られてるらしい

がんばってみたけれど、ボクには解決できず

納得いかないけど、渋々MySQLを5.5にダウングレード。。。

そん時に、MySQL5.5を起動しようとしたら

エラーが出たので、対処方法をメモメモ

普通に起動しようと思ったら、エラーになったよ?!

とりあえずログ確認

どうやら以前のバージョンのib_logfile0ファイルの
残骸があるようで、怒られている模様。。。

とりあえず、/var/lib/mysql/にあった
ib_logfile0、ib_logfile1を削除してから

もっかい起動を試みる、、、

まだエラー、、、

次のメッセージは

う~ん、DBの場所がみつけられないといっている模様

ググって探した、下記のコマンドを投げてみる

あれっ、これも失敗。

やばい、ハマりそうな予感。。。

よくわかんないので、もっかいMySQLの起動!

エラーメッセージが変わったーっ!!

どうやら、host.frmの所有者がrootなのが問題?!

うりゃー、もっかい起動ー!!

でたー、エラーっ!

ファイル削除!

無事、起動成功!

【MySQL】ユーザの作成と権限付与

頻繁に作業するものでもないので

毎回調べてる気がするので、メモメモ

以上!