CBRで風になる~♪

趣味のバイクやPCの事を主体に書いて行きます♪
月に1度以上ブログの更新を目指しています!

DBサーバー構築メモ・その2

2011年09月26日 | デスクトップパソコン
ときどき
今回もPCネタでマニアックな内容です
前回、仮想環境上でLinuxServerを起動しPostgreSQLを使いDBサーバーとして
構築する手段を書き留めて置きましたが、ここで一つ問題が…

会社のサーバーは常時稼働しているのですが Windows7を使っているため月例の
パッチが公開された夜中に自動的に更新され再起動します。

その時にVirtualboxが強制終了され再起動後ゲストOSであるLinuxServerへ
アクセスできなくなります。しかし月例パッチは自動適用したいので以下の処理を
施しました。

1.Windows7起動時にVirtualboxのゲストOSであるLinuxServerの自動起動
2.Windows7シャットダウン時にゲストOSの状態の保存(休止状態へ移行)

手法としてシステム起動およびシャットダウン時の簡単なバッチファイルを作り
Windows7から用意されたグループポリシーに登録しました。

まずはバッチファイルの中身のメモを

1.VirtualboxのゲストOS起動バッチ(UbuntuServer_Start.bat)の登録
  cd \Program Files\Oracle\VirtualBox
  VBoxHeadLess -s ゲストOS名
2.VirtualboxのゲストOS保存バッチ(UbuntuServer_Stop.bat)の登録
  cd \Program Files\Oracle\VirtualBox
  VBoxManage controlvm ゲストOS名 savestate

ゲストOSはバックグラウンドで動作していれば良いので…
システム起動時のバッチにVBoxManageを使用せずVBoxHeadLessコマンドを
利用しています。しかしサーバーから直にゲストOSにアクセスしたい時が
あるため併せてVBoxHeadlessTrayというツールもインストールしています。

このツールは英語版になりますがコマンドは分かり易くとても便利です。
窓の社にもレビューが載っていますので以下のアドレスを参照してください。

http://www.forest.impress.co.jp/docs/review/20101210_413346.html

グループポリシーの登録に関して最初はタスクスケジューラーで、自動実行する
タスクを登録しようと考えていたのですが…タスクスケジューラーには
システム起動のイベントはあるのですがシャットダウンのイベント項目が無い…
ということで色々とググった結果グループポリシーの登録に辿り着きました。

グループポリシーの登録方法は

1.コマンドの実行等で「gpedit.msc」と入力
2.出てきたウィンドウから[コンピューターの構成]-[Windows の設定]-
  [スクリプト(スタートアップ/シャットダウン)]を選び、参照ボタンを押して
  バッチファイルの登録

とても簡単ですww

以上でホストOSの再起動時にもゲストOSの内容を保持したまま再開できます。
忘れるといけないので自分用メモとして残して置きたいと思います。
コメント

DBサーバー構築メモ・その1

2011年09月05日 | デスクトップパソコン
ときどき
ご無沙汰しています。特に変わりなく元気に過ごしています
今は火・水曜日とパソコン教室のインストラクターのお仕事をしながら…
月・木・金曜日と実家の会社に行き、経理システムの見直しを行っています。

実家の会社の経理システムは専用のサーバーを立てておらず作成したのも10年前と
かなり古くなっているため、専用サーバを構築し経理システムを改修する予定で
進めています。

とりあえず社員のPCが3台あり重要なデータがバラバラで保存してあるため
まずはファイルサーバーを構築しました。H/Wスペックは以下の通りです。

ベアボーン:SH67H3(マザー:H67Express,電源:80Plus 300w)
CPU  :Corei3 2105(3.1GHz 2コア/4スレッド:HDGraphics 3000:TDP65w)
メモリ  :8GB(DDR3-1333 4GB x 2枚)
DVD  :DVD-RAM Drive(安物)
HDD  :1TB(日立製1TB x 2機 RAID-1)
USB  :1TB(バックアップ用HDD:USB2.0接続)

OS   :Windows7 Professional SP1 64bit版



SOHOサーバーならOSはWindowsHomeServer2011だろと言われそうですが
WHS2011のディスク管理はブラックボックス化されていて良く分からず…
HDDはRAID化しないでくださいとの注意書きがあり (;^ω^)
そんな得体のしれない物に会社の大事なデータを任せられないと思い
Windows7 Professional SP1にしました。

メモリは仮想環境でDBサーバーを構築する予定のため8GBと多めに搭載し
HDDはRAID-1でミラーリングして、かつ毎日外付けHDDでバックアップを
行うように設定しました。二重に守られているので安全でしょう。

現在、会社の経理システムはExcelVBA+Acccessで動かしていますが
DBの内容を全てのPCで参照しようとすると共有フォルダを使う形になり
つながっているPCから全て丸見えの状態になるので今回改善する事にしました。
また近い将来、消費税率が上がる時に備えプログラムも改修予定です。

で、まずはDBサーバーを如何しようかと考えた結果…
将来性も考慮しホストOSに縛られない仮想環境上で動作の軽いLinux Serverを
動作させ、DBにはフリーで実績のあるPostgreSQLを使う事にしました。

Linux ServerはUbuntu11.04 Serverをチョイス…
http://www.ubuntulinux.jp/products/JA-Localized/download
上記のHPから最新の日本語RemixCDイメージを拾ってこれます。

仮想環境はVM Virtualbox4.1.2を導入…VMwareWorkstation7も考えたのですが…
VMwareはVMWarePlayer以外有料ですし、フリーソフトではVirtualboxの方が
多機能で動作が速く、ホストOSに悪さをしないという事で決めました。



本来Ubuntu ServerにはLAMP(Linux+Apache+MySQL+PHPetc)がワンパックで
入っていて直ぐにクラウドサーバーとして環境を構築できるのですが…
今回Webで動作するアプリを作るわけでも無いのでApacheとPHPetcは使わず
自分がMySQLよりPostgreSQLに慣れているためDBにPostgreSQLを起用しました。

ある程度DBサーバーとして動作する状態になったので、それまでの設定工程を
メモとして書き残して置きたいと思います。

1.Virtualbox4.1.2のインストール(自動で行われるので注意事項は特になし)
2.Ubuntu Server11.04のインストール(CDイメージから半自動)
3.基本Linux ServerはCUIで使い辛いためGUIに変更
  X Windowをインストール…以下のブログを参考に設定
  http://blogs.dion.ne.jp/tracks/archives/9622434.html
4.GUIは初期設定では英語なので日本語に変更
5.そのままではひらがなが入力できず日本語変換もできないため
  システム設定=>言語サポートからの日本語入力を下記の画面のように設定
  
6.PostgreSQLのインストール…以下のブログを参考に設定
  http://itmst.blog71.fc2.com/blog-entry-45.html
7.コマンドでDBサーバーを操作するのは面倒なため pgAdmin3 を導入
  以下のブログを参考にインストール&設定
  http://www.kkaneko.com/rinkou/postgresinstall/pgadmin3.html
8.テスト用のユーザー・DB・テーブルを作成
9.ネットワーク越しにpostgreSQLを参照できるようにクライアントPCに
  ODBCドライバをインストール
  ※注 Office製品は32bit版を使用しているため32bit版のドライバを使用
     クライアントOSが64bit版の場合コントロールパネルの管理ツールを
     使用せず"C:\Windows\SysWOW64\odbcad32.exe"を実行して
     PostgreSQLODBCドライバをインストールする事
     64bit版のODBCドライバをインストールしても接続できません
10.クライアントPCからAccessなどで外部データベースに接続する

ここまでは出来たので、今後AccessのDBをPostgreSQLにエクスポートして
DAO接続からADO接続にExcelVBAプログラムを修正していきます。

これによりクライアントPCにはExcelVBA/DBサーバーにはPostgreSQL
を使用する形になりAccessを使っていた時よりも安全性が格段に上がります。

しかしpgAdmin3は便利ですね。GUIでデータベースを一元管理できるし
テーブルを作成するのにSQLコマンドを入力しなくても良いのはありがたいです。



全ての移行が終わった後、消費税対策を検討していきたいと思います。
以上・DBサーバー構築の自分用メモでした。
コメント