windowsでのあれこれ
Windowsでパフォーマンスやプロセスの状態を取得する方法。コマンドで。
1. プロセスの状態を取得する方法
tasklist
2. プロセスのサービス名を取得する方法
tasklist /svc
3. サービス名を取得する(すべて)
sc query
4. サービス名を取得する(動作中のみ)
sc query | findstr /i service_name
5. サービス名を取得する(止まっているサービス)
sc query state= inactive | findstr /i service_name
7. CPU使用率
C:\> typeperf "\Processor(_Total)\% Processor Time" > typeperf_cpu.txt
8. メモリ使用状態
C:\> typeperf "\Memory\*" > typeperf_mem.txt
Windows⇔Linux(centos)のファイルやりとり
WindowsマシンとLinuxマシンでのファイルやりとりをする方法のまとめ。
(1) WinSCPを使う
Windowsマシンにインストールするだけ。一番手軽。
が、しかし、容量の大きいファイルを転送すると時々欠損する。
http://winscp.net/eng/docs/lang:jp
Windowsマシン上からTeraTermでLinuxに接続している場合、コンソール上にドラッグ&ドロップでファイル転送可能。
または、ファイルメニューから、「SSH SCP」を選択して実行する。
が、しかし、一点注意点があるのです。
ファイルの権限には注意が必要で、「root」ユーザにスイッチしてからファイルの受信を行っても、最初にログインしたユーザの権限でしかファイルの受信が出来ません。
(3) Linux側にSamba-Clientを入れてマウント
Linuxマシン側にSamba-Clientを入れて、Windowsマシン側はディレクトリ共有をかけておく。
あとは、Linux側で操作するだけで、共有ディレクトリに対してアクセスするだけ。
手順はこんな感じ↓
1)samba-clientが入っているか確認。
確認方法:rpm -q samba-clientと打ってみてパッケージ samba はインストールされていません。と出たらsambaをインストール。
2)samba-clientインストール
yum install samba-client
インストール確認は以下で。
rpm -q samba-client
こんな出力がされる。→samba-client-3.6.9-169.el6_5.x86_64
4)Linux側でディレクトリマウント
rootユーザで以下のコマンドを打つ。
smbclient '\\windowsマシンのIPアドレス(or ホスト名)\3)で作った共有ディレクトリ名' -U ユーザー名%パスワード
5)操作
ファイルをLinux→Windowsに置く
put ディレクトリパス/ファイル名 3)の共有ディレクトリに置く用のファイル名
MySQL
データベーススケールアウト(分散構成)についてのメモ
KeyWords:データベース、分散、スケールアウト、MySQL、MySQL Cluster、SemiSync
MySQLの冗長化手段
・MySQL Cluster
・DRBD
・MySQL Replication
MySQL Clusterで使用できるトランザクション分離レベル
READ COMMITTEDのみ
(他のトランザクションのコミット済みデータを読み込む。
Non-Repeatable Read, Phantom Read)
Semi-Synchronous
スレーブへのバイナリログ転送が保証されるのが特徴
I/Oスレッドは同期
SQLスレッドは非同期
MySQL5.5以降
※注意点
複数台のスレーブがある場合
1台がAckを返した時点でCOMMIT完了
マスターはAckを待っている間COMMITが止まる
スレーブ障害がマスターに伝播する可能性あり
rpl_semi_sync_master_timeoutを短くする
Failoverについて
・MySQL MHA
・mysqlfailover(MySQL5.6以降)
→Pythonで書かれた公式のスクリプト
・自前
→最新スレーブ判定は準同期レプリで代用可能
DB基盤セミナー(Oracle)
先日、新日鉄の基盤刷新セミナーに出席してきた。
紹介されたDB基盤はOracleのExadataってやつで、パネエ感じだった。
アプライアンスサーバになってて、ネットワーク機器からストレージからが一体となってって感じで。
もちろん信頼性も高いってわけ。
中でも注目は、SmarScanって技術。これが、検索の性能をめちゃめちゃ発揮してくれる。らしい。
なんでも、ストレージ上でデータを検索して、その結果を教えてくれるらしいよ。
ま、ちゃんとSmatrScanに対応したクエリを発行しないといけないみたいだけど。
うちの会社の方針は天下のまいくろさんだから、なかなかOracleを導入するって話にはならないかもしれないけど、アプリの作りを軽くして(コストも設計も)、H/W側に性能を担保してもらうってのは、そういう意味ではありなのかもしれない。
余談ですけどセミナーの懇親会でお話した他の会社のエンジニアの人おもろかった。