« 超時空要塞マクロス | トップページ | 牛角のウーロン茶ってスゲー高い »

2011年4月27日 (水)

Windows Server 2008 R2 Foundation

夏に導入するシステムのサーバーがWindows Server 2008 R2 Foundationに決まり、Dellのサーバーにプリインストールされて来るのをずっと楽しみにしていたのですが、やっと来ました。

発注してから、二週間くらいかかったかな。

サーバー本体はT110で、CPUをCore i3、メモリ4GB、HDDをRAID1等の変更を加えてます。

>Dell Power Edge T110

ケースもなかなかかっこ良いですね。

OSをWindows Server 2008 R2 Foudation Edition(WS2008R2FE)にしたのは、言わずもがな、です。

WS2008R2FEは、クライアントからのアクセスライセンス(CAL)の必要がなく、Windows7等のクライアント用OSが同時接続10台までなのに対して、15台まで可能だからという、それだけのためです。

なので管理方法もただのワークグループで、ドメイン管理したりはないです。やり方もよく解らんし。

もう少し待てば、Windows Small Business Server 2011 Essentialsというのが出て、こちらは25台まで接続できるみたいだけど。

まあ、15台繋がれば、十分かな。

ちなみに、WS2008R2FEは、64bitOSです。

今までの32bit版のソフトも大抵は動くと思いますが、動かない可能性も考慮する必要があります。

他に気を付けないといけないところは特に無いですが、ソフトのインストール先が64bitソフトはProgram Filesに入り、32bitソフトはProgram Files(86)に入ると言うことくらいじゃないでしょうか。

 

Windows Serverなんてなかなか触る機会がなく、毎回最新OSで戸惑ってしまいます。

WS2008R2FEは、機能的にWindows7と同等ですね。

(2000ServerはWindows2000、2003はXPって感じでした。)

もっとも、Aero等はなく、殺風景な画面ですが。

とりあえずこれに、データベースと、VisualBasic6.0、その他通信ソフトとかをインストールします。

データベースは、SQLServer2000をずっと使ってたのでそれが良かったんですが、流石に古いし、どうもWS2008ではサポートされていないみたいなんですよね。

一応インストールだけしてみたんですが、一見動いてるように見えるけど、Enterprise Managerで新規テーブルを作成できなかった。画面が真っ白で。

テーブルさえ作れたら、使えるのかもしれないけど。

で、SQL Serverも通常のエディションだと、Windows Serverと同様に、クライアントアクセスライセンス(CAL)が必要になる。

OSのCALをケチって、SQL ServerのCALをケチらないわけがない。

なので、SQL Server 2008 R2 Express Editionを使用することにした。

>SQL Server 2008 R2 Express Edition のインストール

これは、マイクロソフトから無料で提供されている分、制限が結構厳しい物ですが、小規模システムだと、まあ悪くないかと思う。

主な制限は、データベースサイズが10GBまで、CPUが1基まで、RAMが1GBまで、SQL Server エージェントが無いとかそんな感じです。

データベースのサイズが10GBまで到達するような事は今までないので良いんだけど、エージェントが使えないのはちょっと痛いですね。

でもまあ、どうせサーバー上で動かすプログラムをVBで組むんだから、データベースをバックアップするSQL文を発行してやれば、それでOKかな。

バックアップするだけのプログラムを作成して、OSのタスクに登録するのも良いと思う。

 

クライアントからサーバーを操作するのに、これまではRealVNCを使ってたんですが、今回からリモートデスクトップを使用することにしました。

接続された方はログオフ状態になり、操作不能になってしまいますが、安定性も速度も申し分ないです。

RealVNCだと、カーソルが勝手に動くのが見え、同時に操作することも出来ます。取り合いになりますが。

余談ですが、家でサーバーとして使ってるVistaにRealVNCでアクセスするんですが、RealVNCがたまに固まるんですよね。サーバー自体は固まってないので、その場まで行って操作することは可能ですが。

それと、最近はやりのUACが表示されると操作不能になる。

その点、リモートデスクトップは安心感があります。

なので、家でもリモートデスクトップを使用することにしました。

 

サーバーOSで余計なサービスが立ち上がらないからなのか、最新OSだからなのか、私の使っているOSがVistaだからそう思うのか分かりませんが、起動、終了がものすごく早いです。

そういえばWindows7のクライアントマシンも起動、終了が早いので、やはり最新OSだからなのか・・・。そろそろVistaも引退かなぁ。

 

ちょっと詰まったとことか。メモ。

 

○WS2008R2FEが起動して、さあ、遊ぶぞ!と思ったら、いきなり詰まった。

まず最初に、Administratorのパスワードを入力する必要があるわけですが、いつも使っているパスワードが通らない。

ネットで検索してみると、どうもセキュリティが甘くなるパスワードが使えないらしく、アルファベットの大文字、小文字、数字、アルファベット以外の文字の4種類のうち、3種類を組み合わせる必要があるとか。メンドクセー。

ポリシーを変更することも出来るみたいだけど、一度はログオンしないといけないわけで。

>Windows Server 2008 RC1ファーストインプレッション

 

○VisualBasic6.0のインストールに失敗する。

VB6のインストール時に、「セットアップが DCOM ユーザー アカウントを作成できません」と出ますが、この通りにやれば大丈夫です。

>マイクロソフトサポートオンライン

要するに、Visual Studio Analyzerのチェックを外してインストールし、インストール完了後、Visual Studio Analyzerのみをインストールすると。

 

○VB6の起動に失敗する場合。

サーバーOSだけでなく、Windows7でも当てはまるのですが、VB6起動時に管理者として起動する、ということですね。管理者として起動しない場合、エラーが出ます。

VB6.EXEの場所は、ショートカットのプロパティから’ファイルの場所を開く’か、

64bitOSの場合は、C:\Program Files (x86)\Microsoft Visual Studio\VB98にある、VB6.EXEを右クリックしてプロパティを開き、’管理者としてこのプログラムを実行する’にチェックを入れてから起動すればOKです。

32bitOSの場合は、C:\Program Files\Microsoft Visual Studio\VB98の中です。

ただ、これにチェックを入れておけばVB6の起動自体は問題ないですが、ユーザーが標準ユーザーの場合は、Administratorのパスワードを聞いてきます。

つまり、Administrator権限がないと、プログラムを作成・変更できないって事ですね。

でも、標準ユーザーのまま、Administrator権限を使えるのは助かります。

 

○プログラムから、ドライブの直下にアクセス出来ない。

まあ、これはありがちですよね。

普段、Windows7やXPをAdministrator権限で使用していると、アクセス権限を意識しないので、不測の事態に陥ります。

確か、Windows7でもCドライブの直下には、プログラムからアクセスできなかった様な気はしますが。

例えば、私はZドライブをRAMDRIVEにして共有し、外部とのファイルの交換をここで行うようにしているのですが、そのZドライブにファイルを出力したいけど、プログラムからアクセスすると、アクセス出来ない場合があります。

ログオン中のユーザーが、Administrator権限を持っていれば大丈夫かもしれませんが、標準ユーザーを作成して使用している場合、ドライブの直下のアクセス権限がないのです。

その場合は、そのドライブのセキュリティに、その標準ユーザーを登録して、フルコントロールなり適当なチェックを入れてやればOKです。

外部からのアクセスの場合も同様です。

外部からのアクセス用のユーザーを、共有に登録してやればOKです。

 

○サーバー上のSQL Serverに外部からアクセス出来ない。

んですよね、デフォルトでは。

私はSQL Server2000ばかりを使用していたので知らなかったんですが。

(Expressだから?と勘違いして焦りましたが、そういった記述はネット上のどこにも見当たらなかった。)

どうも2003以降、そうなってるみたいです。

>SQL Server 2008へのリモート接続

こちらを参考にして、解決しました。

ファイアウォールにポート1433を許可、SQL Server Browserサービスの起動、TCP/IPの有効化です。これでOKでした。

しかし、データベースをネットワークで使用できないのがデフォルトって、どうなん?

 

○MySQLからSQL Serverへの移行。

現在、MySQLを使用して動いているシステムがあって、同時にSQL Serverに移行することになったんですが、

MySQLからSQL Server2000には、普通にインポートが使えたので心配してなかったんですが、2008では、そもそもMySQLのMySQL ODBC 3.51 Driverが出てこないんですよね。

なので、仕方なく、MySQLyog でデータベースの各テーブルをSQL形式でエクスポートし、内容をSQL Serverに合わせ、クエリで実行するという、原始的なやり方で出来ました。

データ量がそんなに無かったので良かったですが。

もっと頭の良いやり方があるみたいなんですが、どうにも難しいですねぇ。

それにしても、intで定義してあるのに、エクスポートするとdoubleになってしまうのはなぜかな。

 

○データベースの定期バックアップが取れない。

上述のとおり、SQL Server 2008 R2 Express Editionにはエージェントがないため、定期バックアップを自動で取る場合、何らかの手段が必要になります。

ただ、バックアップを取るためのスクリプトは作成してくれるので、それをプログラムから実行するだけでバックアップできるので、それほど不便ではない。

操業中にいきなりバックアップを始められることを考えたら、こちらのタイミングで実行出来る分、良いのかもしれない。

スクリプトの作成は、Microsoft SQL Server Management Studioで、バックアップを作成したいデータベース上で、右クリック、タスク、バックアップを起動する。

データベースのバックアップ画面で、ファイルの保存先や、追記、上書き等の設定を行ったら、上部のスクリプトのアイコンを押すか、ファイルに保存等を選択する。

それで生成されたSQL文をクエリで実行してみて、ちゃんと作成されればOKです。

 

あと、バックアップを定期的に取る必要性についてですが、単純にコピーを作成する以外に、トランザクション ログの切り捨てを行うためでもあります。

定期的にログの切り捨てを行わないと、データベースにアクセスするたびにその履歴が蓄積していき、データベースを圧迫します。

あと、バックアップはデータベースと同じハードディスクに取っても、壊れたら同時に失われて意味が無いので、USBメモリとかに取るほうが良いです。時間はかかりますが。

でも、データベースのバックアップのオプションを見ると、「トランザクション ログの切り捨て」項目が選択できないんだけど、ちゃんと切り捨てられてるんだろうか。単純(変更不可)、完全バックアップで上書きの設定なので、大丈夫だと思うんだけど。

 

 

こんなとこですかねぇ、相変わらず各サイト様には助けていただいてばかりです。

少しでもこのサイトが役に立って、インターネット難民が減れば幸いです。

 

内容に間違いがあったばあいは、スミマセン。

|

« 超時空要塞マクロス | トップページ | 牛角のウーロン茶ってスゲー高い »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: Windows Server 2008 R2 Foundation:

« 超時空要塞マクロス | トップページ | 牛角のウーロン茶ってスゲー高い »