kikukawa's diary

都内で活動するシステムエンジニアが書いてます。 興味を持った技術やハマったポイント、自分用メモをつけてます。 最近はweb中心

2013-01-01から1年間の記事一覧

MySQLでマスク

マスクかけてデータを扱いたいことがありました。 update文でマスクかけるやり方です。 ドメインだけ残して、後は固定文字列とかカラムだけ使う方法 idはtable_nameにある連番のカラムです。 update table_name set email = concat(id,'-foo-',SUBSTRING_IND…

ELBのSSL証明書の削除

aws

ELBに埋め込んだSSL証明書の削除方法です。 SSLの証明書はデフォルトでは10個までしか保持できないらしく 削除する必要が出てきました。 ※別途AWSに制限緩和の申請を出すと10個以上作れるらしいですが、未実施なので詳しいことは分かりません。ELBに埋め込ん…

mysqldump: Got error: 1146: Table 'foo.bar' doesn't exist when using LOCK

メモmysqldumpした時に fooデータベースのbarテーブルがないって怒られた時にこのエラーメッセージが出ました。。数日前にdropしたテーブルのはずでしたが。。 phpmyadminでみるとこのテーブルは、一覧に表示されませんでした。普通は、データ格納ディレクト…

phpMyAdminでhostの別名をつける

メモphpMyAdminを使用しているが、 実host名を指定すると、似たような名前が多くて混乱するので 別名を付けたいという要望です。config.inc.phpでのサーバー列挙部分で一手間foo_hostにfooという別名をつける場合verboseというキーを追加すれば良いようです…

Slave_SQL_Running: No

memo show slave status \G を実行した時に、 Slave_SQL_Running: No と出てきたときの対処法今回のケースは、誤ってslave側にinsertしてしまって、 master側でも同じinsertを流したので、重複エラーになってしまったのが原因でした SET GLOBAL SQL_SLAVE_SK…

ユーザーの作成から秘密鍵の作成まで

メモ #foo_groupに属する fooというユーザーを作成する adduser -g foo_group -d /home/foo -s /bin/bash foo #パスワード設定 passwd -f foo #追加したユーザーへ sudo su - foo #鍵の作成 ssh-keygen -t rsa #公開鍵を追加 cat ~/.ssh/id_rsa.pub >> ~/.ss…

viでコメントアウトされている行だけ削除

忘れるのでメモviでコメントアウトされている行だけ削除 vでビジュアル選択した後に :'g/^#/d ファイルすべてが対象なら :g/^#/d 部分一致なら :g/foo/d

EC2での高負荷の原因

aws

EC2上のロードアベレージが20を超えたことがあったので、 その時のメモ。EC2上で、アプリの管理画面を運用していました。 その管理画面で、とある機能を使用した時に、複数人が同時に 実行するロードが上がるという現象です。もともとは、オンプレミスで稼働…

MySQLで実行中のクエリ確認方法

MySQLにログインした後に、 実行中のプロセスを確認するコマンドに show processlist; がありますが、この結果に表示されるSQLの全文表示方法が分からなかったのでメモ。MySQLで実行中のクエリ一覧を見て、SQLを強制終了する方法fullをつければ良いらしい。 …

公開鍵の再作成

よく調べるのでメモ $ ssh-keygen -y -f id_rsa > id_rsa.pub

phpで拡張子なしのファイル名取得

PHP

毎回調べているのでメモ phpで拡張子なしのファイル名を取得したいとき やり方はいくつかあるけど、一番簡単なのは多分、これ。 echo basename(__FILE__,'.php'); バッチなどを作るときにログに自分のファイル名を 吐き出したりするので、よく使います。

リダイレクトされない標準出力

メモ仕様なのかやり方が悪いのか。 コマンドを打っていたときに通常のリダイレクトでは リダイレクトされないものがありました。標準出力とか、エラー出力とか その辺のものなのでしょうが、まだ理解が浅かった。下記を見て対応しました。標準出力とファイル…

mysqlのindex 追加と削除を1回で

毎回調べているのでメモMySQLでインデックスの追加や削除をする際に、 何度もalter table を投げたくはないので 1回で済ませたい。 alter table tbl_foo drop index idx_foo , drop index idx_bar , drop index idx_buz , add index idx_hoge(hoge) , add in…

queue-fix の使い方

忘れるのでメモ queue-fix -i /var/qmail/queue

spfのチェックツール

メモこちらのサイトで、spfが正しく設定できているかどうか確認出来ます。http://www.sendmail.co.jp/sa/spfcheck.html

MySQL my.cnfの設定値一覧

メモ調べ方が悪いのか、いつも一発で出てこないのでメモMySQL :: MySQL 5.1 リファレンスマニュアル :: 4.2.3 システム変数

svn: 一時ディレクトリが見つかりません: Internal error

SVN

svnクライアントからコマンドを叩くと下記のようなエラーが出ました。 $svn diff foo/bar/baz.yml svn: 一時ディレクトリが見つかりません: Internal error 何かした覚えがないのにいきなり使えなくなった。 リポジトリの権限周りを確認したけど、特に変わっ…

バケット間コピー 別アカウントの時

aws

メモアカウントAのbacukt_a から アカウントBのbacukt_b にコピーしたいとき 両方とも自分のアカウント その時だけ設定なので、セキュリティは緩め bacukt_aのバケットのプロパティで Add more permissionsをクリックし、 Authenticated Usersを選ぶ、Listと…

CPANのインストール済みモジュール確認

メモリスト find `perl -e 'print "@INC"'` -name '*.pm' -print 特定モジュール find `perl -e 'print "@INC"'` -name 'xxx.pm' -print

mysqlのユーザーだけ移行

mysqlのユーザー情報をパスワード変更なしで移行したかったので試してみました。 試行錯誤の末、できたというレベルなのでなんの保証もありません。 MySQL 5.1での結果です。サーバーAのユーザー情報の中で必要なものだけを サーバーBに追加したいという要件…

/etc/hostsの反映

メモ/etc/hostsを修正した場合下記、コマンドにて反映させる service network restart

vimでのコメントアウト

毎回調べているのでメモ Ctrl+vで範囲選択 I(大文字i)で先頭に挿入 コメント文字入力 Esc 自分の環境では、すぐに反映されなくて やり方間違っているかと何度も試してしまいました。 Escの後、カーソル移動すると反映される? もしくは、しばらくたった後?…

CentOS iptableの確認

毎回調べているのでメモ状態の確認 # service iptables status 設定ファイルなど /etc/sysconfig/iptables

Discovering channel pear.channel.com over http:// failed with message: channel-add: Cannot open "http://pear.channel.com/channel.xml" (Connection to `my-proxy:proto' failed: 接続がタイムアウトしました)

PHP

Pearのチャネルを追加しようとしたら、コネクションタイムアウトでエラーになりました。 # pear channel-discover pear.channel.com Discovering channel pear.channel.com over http:// failed with message: channel-add: Cannot open "http://pear.channe…

AWS SDK for PHPの1系をインストール

既存のプロジェクトで、5.2系を使用しているため、どうしても1系をインストールする必要がありました。 チャネルの追加 # pear channel-discover pear.amazonwebservices.com Adding Channel "pear.amazonwebservices.com" succeeded Discovery of channel "…

qmailからコマンドでメール送信

メモ echo to: メールアドレス | /path/to/qmail/bin/qmail-inject 上記だけで、メールが送信できました。 件名と本文を入れたいときは echo 'to:メールアドレス\nsubject:test_subject\n\ntest_body' | /var/qmail/bin/qmail-inject 参考 いい加減な備忘録 …

Failed to open log (file './mysql-bin.000003', errno 2)

エラーが出てMySQLが起動しなくなったときの対処 xxxxxx 00:00:00 InnoDB: Started; log sequence number 0 3085087455 /path/to/mysql/libexec/mysqld: File './mysql-bin.000003' not found (Errcode: 2) xxxxxx 00:00:00 [ERROR] Failed to open log (fil…

Can't start server: can't create PID file: No space left on device

エラーメッセージをよく読めばすぐに解ったはずですが、 はまったのでメモ xxxxxx 00:00:00 [ERROR] /path/to/mysql/libexec/mysqld: Error writing file '/path/to/pid/xxxxxxxxx.pid' (Errcode: 28) xxxxxx 00:00:00 [ERROR] Can't start server: can't cr…

Manager of pid-file quit without updating file.

MySQLを起動するときにエラーメッセージがでて起動できなくなったのでその時の対処停止に失敗したようで、プロセスが生きていた。プロセスの確認 ps au | grep mysql プロセスをkill kill xxxx 消えたことを確認 ps au | grep mysql まだあったら、-9つけてk…

MySQLのmy.cnfの読み込まれる場所

調べたのが2回目なのでメモ myql --help | grep cnf 参考 Hemebrewで入れたMySQLのmy.cnfを設定 - ほげほげ(仮)