未分類」カテゴリーアーカイブ

slow_query_log したいときのmy.cnfの書き方。


IMGP4587



※写真と本文は関係ありません。


mysql 5.1 の my.cnf の書き方。『slow_query_log = ON』では設定が反映されない。
『slow_query_log = 1』と書く。

こんなふうに書いたら有効にならない。


[mysqld]
slow_query_log = ON
slow_query_log_file = /var/log/mysql-slow.log
long_query_time = 0.1


mysql で show variables して確認。有効じゃない!!(他の設定は反映されてるのに…)


mysql> show variables like 'slow%';
+---------------------+-------------------------+
| Variable_name       | Value                   |
+---------------------+-------------------------+
| slow_launch_time    | 2                       |
| slow_query_log      | OFF                     |
| slow_query_log_file | /var/log/mysql-slow.log |
+---------------------+-------------------------+
3 rows in set (0.00 sec)
mysql> show variables like 'long%';
+-----------------+----------+
| Variable_name   | Value    |
+-----------------+----------+
| long_query_time | 0.100000 |
+-----------------+----------+
1 row in set (0.00 sec)


『slow_query_log = 1』と書けばOK。


[mysqld]
slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow.log
long_query_time = 0.1


でmysqldを起動するとこんな感じで、Logfile に Versionなどが書き込まれる。


# tail -f /var/log/mysql-slow.log
/usr/libexec/mysqld, Version: 5.1.56-log (MySQL Community Server (GPL) by Remi). started with:
Tcp port: 3306  Unix socket: /var/lib/mysql/mysql.sock
Time                 Id Command    Argument


show variables して確認。OK。


mysql> show variables like 'slow%';
+---------------------+-------------------------+
| Variable_name       | Value                   |
+---------------------+-------------------------+
| slow_launch_time    | 2                       |
| slow_query_log      | ON                      |
| slow_query_log_file | /var/log/mysql-slow.log |
+---------------------+-------------------------+
3 rows in set (0.01 sec)


集計するには『mysqldumpslow』コマンド(実行時間が長い順にソート)
mysqldumpslow -s at /var/log/mysql-slow.log


ウノウラボ by Zynga Japan: MySQLのチューニングのためのデータの集め方


〜mysql 5.0 だとオプションが違う。


long_query_time=1
log-slow-queries=/var/log/mysql/slow.log


touch /var/log/mysql/slow.log
chmod 664 /var/log/mysql/slow.log
chown mysql:mysql /var/log/mysql/slow.log

/var/log/mysql/slow.log のパーミッション注意。

log-queries-not-using-indexes オプションも有効にするといいかも。

HP DL180G6 + CentOS6.3 の hp-health で Segmentation fault。


でもこれはこれで。



※写真と本文は関係ありません。


インストールした環境


$ uname -a
Linux backup2012.localdomain 2.6.32-279.14.1.el6.x86_64 #1 SMP Tue Nov 6 23:43:09 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
$ cat /etc/redhat-release
CentOS release 6.3 (Final)
$ rpm -qa |grep ^hp
hpmouse-1.2.1-1.noarch
hponcfg-4.0.1-0.noarch
hp-health-9.1.0.42-54.rhel6.x86_64
hpacucli-9.30-15.0.x86_64
hpvca-7.1.2-0.i386
hp-smh-templates-9.2.5.6-6.all.noarch
hpsmh-7.1.2-3.x86_64
hp-snmp-agents-9.1.0.57-51.rhel6.x86_64
hp-fc-enablement-1.2-14.noarch
hpdiags-9.3.0-466.x86_64


hp-snmp-agentsやhp-health を起動しようとすると 『セグメンテーション違反です』と言われる。
/etc/init.d/hp-snmp-agents start
とすると hp-health の起動スクリプトでエラー。
/etc/init.d/hp-health start
すると当然エラー。

日本語だと。


# /etc/init.d/hp-snmp-agents start  Using Proliant Standard
      IPMI based 1XX System Health Monitor
  Using standard Linux IPMI device driver
Starting ipmi drivers:                                     [  OK  ]
  Starting Proliant Standard
      IPMI based 1XX System Health Monitor (hpasmpld):
/etc/init.d/hp-health: line 666:  2710 セグメンテーション違反です               (コアダンプ) $PNAME $PARGS < /dev/null >> $LOGFILE 2>&1
                                                           [失敗]
/etc/init.d/hp-health: failed to start! Please review log file for details.
The log file locations are documented in the hp-health(4) man page.
#
#
#  /etc/init.d/hp-health start
  Using Proliant Standard
      IPMI based 1XX System Health Monitor
  Using standard Linux IPMI device driver
Starting ipmi drivers:                                     [  OK  ]
  Starting Proliant Standard
      IPMI based 1XX System Health Monitor (hpasmpld):
/etc/init.d/hp-health: line 666:  2922 セグメンテーション違反です               (コアダンプ) $PNAME $PARGS < /dev/null >> $LOGFILE 2>&1
                                                           [失敗]


LANG=C をするとこんな感じ。


# LANG=C /etc/init.d/hp-snmp-agents start
  Using Proliant Standard
      IPMI based 1XX System Health Monitor
  Using standard Linux IPMI device driver
Starting ipmi drivers:                                     [  OK  ]
  Starting Proliant Standard
      IPMI based 1XX System Health Monitor (hpasmpld):
/etc/init.d/hp-health: line 666:  2795 Segmentation fault      (core dumped) $PNAME $PARGS < /dev/null >> $LOGFILE 2>&1
                                                           [FAILED]
/etc/init.d/hp-health: failed to start! Please review log file for details.
The log file locations are documented in the hp-health(4) man page.
#
#
# LANG=C  /etc/init.d/hp-health start
  Using Proliant Standard
      IPMI based 1XX System Health Monitor
  Using standard Linux IPMI device driver
Starting ipmi drivers:                                     [  OK  ]
  Starting Proliant Standard
      IPMI based 1XX System Health Monitor (hpasmpld):
/etc/init.d/hp-health: line 666:  3006 Segmentation fault      (core dumped) $PNAME $PARGS < /dev/null >> $LOGFILE 2>&1
                                                           [FAILED]


いろいろ調べたらHPのメーリングリストに書いてあった。Fix for hp-health on DL100 series running CentOS6

で解決。

mcelogdを止めてからhp-healthを起動するとうまくいくらしい。
/etc/init.d/hp-healthの
# chkconfig: 2345 91 2 を
# chkconfig: 2345 31 2 に直したあと

chkconfig –del hp-health
chkconfig –add hp-health
して、自動起動を設定し直す。

で、ちゃんと起動するようになりました。

サイクルコンピュータを Garmin にしてみた。


2012-11-13 18.26.30


ブレーキとサイクルコンピュータを新しくしたので軽く乗ってきた。(速くなるパーツじゃないのでいまいちテンション上がらないけど…)
木枯らし一号の日で、風がひどかった。もう冬だね。。



GPSついてるので地図が出る!

それはそうと、左股関節の痛みと左足薬指のしびれが治らないー。

ClamXav のAppStore版をコマンドラインで使う。


IMG


※写真と本文は関係ありません。


セキュリティなんとかのあれで、社内のコンピュータは定期的にウイルススキャンしなけりゃいけない。

ClamXav のダウンロード版をのコマンドをcronで週1回動かして使ってたんだけど、AppStore版になってPATHが変わったので書いておこう。

/usr/local/clamXav/bin/clamscan にあった コマンドが移動して、/Applications/ClamXav.app/Contents//Resources/ScanningEngine/bin/clamscan
使いたいコマンドは /Applications/ClamXav.app/Contents//Resources/ScanningEngine/bin/ 以下にある。

–help ってやると細かいオプションが確認出来る。

※Warningが出ていたので、Virus database をupdateするように追記。


LibClamAV Warning: **************************************************
LibClamAV Warning: ***  The virus database is older than 7 days!  ***
LibClamAV Warning: ***   Please update it as soon as possible.    ***
LibClamAV Warning: **************************************************


Updateするようにした。(Updateコマンド→freshclamとConfigはここにある)


# コマンド
# /Applications/ClamXav.app/Contents/Resources/ScanningEngine/bin/freshclam
# 設定
# cat /Applications/ClamXav.app/Contents/Resources/ScanningEngine/etc/freshclam.conf


こんなスクリプトを書いて週1回動かしてる。


#!/bin/sh
 
SCANDIR='/Users/furuyamanobuyuki/'
 
LOG=`mktemp /tmp/clamscan.tmp.XXXXXX`
ME='furuyama@example.com'
TOMAIL='qc@example.com'
 
UPDATE_DB='/Applications/ClamXav.app/Contents/Resources/ScanningEngine/bin/freshclam'
CLAMSCAN='/Applications/ClamXav.app/Contents/Resources/ScanningEngine/bin/clamscan'
echo `date` >> $LOG
echo "Scan Dir $SCANDIR" >> $LOG
$UPDATE_DB >> $LOG
 
$CLAMSCAN -r -i -l $LOG --exclude-dir=/Users/furuyamanobuyuki/kakuri/ $SCANDIR
/bin/cat $LOG | /usr/bin/mail -s "furuyama scan result" $ME
/bin/cat $LOG | /usr/bin/mail -s "furuyama scan result" $TOMAIL
 
rm $LOG


すごい時間かかるんだけどね。




ClamXav App


カテゴリ: ユーティリティ
価格: 無料

自転車の長距離イベントに初参加。(2)



HRモニターのデータ


自転車の長距離イベントに初参加。(1)からの続き。

PC3(第3チェックポイント・135km)マックスコーヒー飲んだ。(その後雨…)

2012-10-28 16.11.08


しばらく工業地帯の何もないまっすぐな道。暗くなってくる。
途中、木更津のショッピングモールの近くを通ったはずだけどわからず…。

16号に出たのでこのまま北上とおもいきや、曲がって上りがあったり。結構交通量の激しい中ひたすら走る。最後残り数キロのところでゴールがわからなくなって道聞いたりしながらゴール!!

2012-10-28 20.25.00


コンポタ買ってレシートもらう。タイムは12時間17分でした。(午前8時スタートなので夜の8時17分にゴール!)

最後にファミレスへ移動(各コンビニで買ったレシートで時間などをチェックする)。途中立ちゴケ(ヘロヘロで何もないところでこけた)でブレーキレバーがずれた…(ゴールしたあとは気が抜けるから気をつけてって言われたのに…)。でチェック後無事OKとなって、サインしたり、メダル申し込んだり。。

スタート地点近くに停めてたクルマで帰宅。自宅近くの温泉施設で風呂。ファミレスでハンバーグ。で1時くらいに帰宅。


初参加なのでいろいろわからなかったけど。気になったところを書こう。

  • 心拍計のベルトつけたところの肌が擦り切れた。(保護クリーム塗っときゃよかった)
  • 直前に買ったサドル(Selle smp forma)はあまり尻は痛くなかった。いい感じ!
  • 直前に買ったシューズは雨でずぶ濡れ(ドロドロ)になった。><
  • 初使用のサドルバックが走ってるうちにうなだれてきてた。
  • ライトは明るいものが必要。夜走ることをあんまり考えてなかったなぁ。
  • 手元を照らすライトも必要。地図とかサイコンの距離がわからない。(交差点間の距離を測るので結構重要)
  • 雨で夜で灯りないと、かなりキツイ。
  • もっとたくさん食べないとダメだったんじゃないかしら。ようかんとカロリーメイトを自転車乗りながらもぐもぐしてた。
  • ゴール近くのコインパーキングにクルマ停めればよかった。
  • ハンディGPSがいまいち。

その後の体の回復具合

  • 翌日は筋肉痛で目が覚めるくらいだったけど、洗濯したり、自転車でスーパー行ったり。(振替休日でおやすみ)でした。
  • 今は筋肉痛もすっかり治って、気になるのは左足先が痺れてるくらい。痛みはなし。(これどうすりゃ治るのかな…)
  • スキーで伸ばした左ひざの靭帯がおもったより調子悪くならなかったのでよかった。


2012-10-28 15.58.15


自転車もすっかりドロドロになって、雨で油切れたせいでブレーキが動かなくなったり…。


600km目指したいけど、とりあえず次は300km(制限時間20時間)ですかねぇ。。難易度はコースによるけど天気(主に風)によるよね。。

その後、GPS付きサイコンとブレーキを注文しちゃったー。冬に向けてスキーの道具買わないとなのに…。なぁ。

自転車の長距離イベントに初参加。(1)




大きな地図で見る


またGPS途中で切れてた…。(豪雨で防水してなかったし、そのせいか…。)


ブルベという、自転車版ラリーのような200kmを制限時間13.5時間で走るイベント。
概要→2012 BRM1028千葉200km(検見川)

コースは検見川(幕張のとなり)→鴨川→富津→袖ヶ浦→検見川に戻るコース。


2012-10-28 07.57.51


2012-10-28 07.27.12


天気予報は『曇のち(昼過ぎから)雨』で、ちょっとやな感じ、でもスタート時間に降ってなかったので参加。

PC1(第1チェックポイント・53km)までは、薄日が差すくらいの天気だった。でもまあ予報通り雨降ってきてPC1出た直後に合羽装着。PC1でまんじゅうとスポーツドリンク補給。

2012-10-28 10.35.13


2012-10-28 12.22.13


その後山道へ。土砂降り。トンネルで『わーわー!』って言ったり、下りで『ひょー!!!!!』って叫んだり。。

PC2(第2チェックポイント・92km)で大きな峠が終わり海が見えた!塩おにぎりと肉まんとカロリー高そうなパンを買って、コンビニ駐車場でパン以外を食べた。(雨じゃなければ公園みたいなところで食べられるんだろうけどなぁ)

2012-10-28 13.12.11
止まると寒い。
でもすぐ海が終わって、富津の方へ山越え(このへんは雨降ってなかったきがする)。山の途中の雑貨店の前のベンチで休憩。何人かの参加者のかたに抜かれる、さっき買ったパンを食べる。

2012-10-28 14.46.12

その2へ続く。

awstats で閲覧できるユーザを制限する。


恵比寿のバカラ シャンデリア



※写真と本文は関係ありません。


アクセス解析のawsstat。引数をつけて、解析結果を切り替えられるので便利。(複数の解析結果を見せるのが楽)
『同じ URL で結果を表示するから、ユーザでアクセス制限したいけど Basic 認証じゃダメだよなぁ…』って思ってたら、設定があった。

それぞれのawstatの設定に書く。


$ cat /etc/awstats/awstats.host1.conf
…
AllowAccessFromWebToAuthenticatedUsersOnly=1
AllowAccessFromWebToFollowingAuthenticatedUsers="host1-user"
…
$ cat /etc/awstats/awstats.host2.conf
…
AllowAccessFromWebToAuthenticatedUsersOnly=1
AllowAccessFromWebToFollowingAuthenticatedUsers="host2-user"
…


apache のほうはBasic認証の設定。


<Directory "/usr/local/awstats/wwwroot">
Options None
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.1
AuthUserFile /usr/local/awstats/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user
</Directory>


普通にBasic認証を設定して、htpasswdファイルにユーザ追加。(この場合だと host1-user と host2-user を追加)
閲覧許可ユーザを awsstat のConfig AllowAccessFromWebToFollowingAuthenticatedUsers で指定する。


さらにいろいろ制御したいなら、-output -staticlinks オプションで静的にページを生成する。
セキュリティに関するTips – ログ解析スクリプトAWStats 5.0ドキュメント

samba サーバから同一セグメントのホストの NETBIOS NAME の一覧を取得する。


スノーロイヤルスペシャルバニラアイスクリーム



※写真と本文は関係ありません。


$ findsmb 192.168.68.255
                                *=DMB
                                +=LMB
IP ADDR         NETBIOS NAME     WORKGROUP/OS/VERSION 
---------------------------------------------------------------------
192.168.68.1    WW-SV1        [WWワークグループ] [Unix] [Samba 3.5.10-125.el6]
192.168.68.11   WW-FILE-SV1  +[WWワークグループ] [Unix] [Samba 3.0.24-1.22_OSSTECH]
192.168.68.201  FX-476B6A      [    WORKGROUP     ]
192.168.68.203  FX-359098      [    WORKGROUP     ]


WW-SV1がsambaさん。WW-FILE-SV1がNAS。でNASに『+』がついてるのでがローカルマスタブラウザ。
FX-hogehogeはプリンタ。

Windows Server 2008 がいるはずなんだけどみえない。直接指定すると見える。


nmblookup -A 192.168.68.6
Looking up status of 192.168.68.6
    1208-WW_PCA    <00> -         B  
    WW......       <00> -  B  
    1208-WW_PCA    <20> -         B  
    MAC Address = 00-XX-XX-C5-00-XX


マスターブラウザがどのサーバか確認する。


nmblookup -B 192.168.68.255 -M -
querying __MSBROWSE__ on 192.168.68.255
192.168.68.11 __MSBROWSE__<01>
(または)
nmblookup -M -- -
querying __MSBROWSE__ on 192.168.68.255
192.168.68.11 __MSBROWSE__<01>


/etc/fstab のデバイス名を UUID で書く。


IMG_0003.jpg (3)



※写真と本文は関係ありません。


# cat /etc/fstab 
# /etc/fstab
# Created by anaconda on Wed Feb  1 11:57:45 2012
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg_fileserver-lv_root /                       ext4    defaults        1 1
UUID=bc6fdf31-42ae-46e0-8489-f0ff79f21e74 /boot                   ext4    defaults        1 2
/dev/mapper/vg_fileserver-lv_home /home                   ext4    defaults        1 2
/dev/mapper/vg_fileserver-lv_swap swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0


/etc/fstab の『UUID=』で始まる行が従来のデバイス名(と label)で指定せずにUUIDで指定されたところ。

blkid コマンドを使うと、UUIDが表示される。


# blkid /dev/mapper/vg_backupdisk-lv_backup 
/dev/mapper/vg_backupdisk-lv_backup: UUID="37592a2c-0815-44bd-a738-5bf9227d5c7f" TYPE="ext4" 


『/dev/disk/by-XXX』にそれぞれの対応が書いてある。(デバイス認識時ではなくて起動時に反映される)


$ ls -l  /dev/disk/by-*
…
$ ls -l  /dev/disk/by-uuid/
合計 0
lrwxrwxrwx 1 root root 10  7月 30 16:55 2012 129addec-a043-4d2c-99e9-6695f23545f9 -> ../../dm-0
lrwxrwxrwx 1 root root 10  7月 30 16:55 2012 2cb8a7dc-ae7a-479a-8cd5-469af27e2ca2 -> ../../dm-1
lrwxrwxrwx 1 root root 10  7月 30 16:55 2012 37592a2c-0815-44bd-a738-5bf9227d5c7f -> ../../dm-2
lrwxrwxrwx 1 root root 10  7月 30 16:55 2012 bc6fdf31-42ae-46e0-8489-f0ff79f21e74 -> ../../sda1
lrwxrwxrwx 1 root root 10  7月 30 16:55 2012 ebccafcc-83e2-415c-b855-89deb2511ecc -> ../../sdc1
lrwxrwxrwx 1 root root 10  7月 30 16:55 2012 fc0ccad6-e133-4d01-9fb2-16439fdd68c9 -> ../../dm-3