ExpressWebからWinserverに引っ越しました[非推奨案件]

ExpressWebが廃止されるということで契約が切れる3月末で追い出されることになりました。
なのでギリギリまで粘ってWinserverに引っ越しました。
Winserverにした理由は以下の通り。

  1. ASP.NET+MySQL+SQLServer使用可
  2. 当たり前だよね。

  3. 安い
  4. たかだか個人のホムペだし・・。なのでAzureは論外ですわ。

  5. 運用実績
  6. ExpressWebみたいに勝手に値下げして短期間で勝手に撤退する自爆テロをやられると迷惑なので

  7. WindowsServer2012
  8. Win2008Srvベースよりは長くサポートされるので

とにかく年齢を経ると面倒なことは極力したくなるわけですよ。
ただでさえ面倒くさがりなのに金にならないことで面倒は御免なのです。
ということで横移動で安く済み、それなりに運用実績があるところを選んだわけです。
それでも年払いで月々1000円近い金額はそこそこ抵抗があったので、安価なLinux VPSにしてみることも考えましたが、データ移行に苦戦している内に終戦になる恐れがあったので検討除外しました。
ひょっとして思いの外、簡単に移行できたかも知れませんが、元々ASP.NETが好きで選んだことなので心中することにしました。

とまあこうして移転してきたわけですが、私は契約時期として難民化が早い方でしたので、これから私のようなExpressweb難民が続々と出てくることでしょう。
ということで以下に私がたどってきた苦難の道をを紹介します。

1.Expresswebのデータをエクスポート

  • 準備
  • ExpressWebのコントロールパネルにログインする。

  • ファイルの取得
  • [ファイルマネージャ]から”wwwroot”を選択して[Zip形式]ボタンをクリック⇒出力ファイル名(wwwroot.zipみたいなの)を入力する。
    そうするとZIPアーカイブが作成されるのでクリックしてダウンロード。

    ファイルマネージャ

    ExpresWebコントロールパネルのファイルマネージャ

  • DBデータの取得(Blogデータ)
  • [データベース]から”MySQL5.1″をクリック⇒[データベースを参照]をクリックしてphpMyAdminを開く。
    phpMyAdmin-[エクスポート]タブをクリック⇒blogのDB名を選択して[実行する]をクリックするとDBデータのダウンロードが始まる。

    phpMyAdminのエクスポート機能

    phpMyAdminのエクスポート機能


    デフォルト設定に対して「作成するクエリの最大長」だけ増やしましたが、半端にインポートしても意味がないので「エクスポートをトランザクションで囲む」にチェックしても良いかも。

  • DBデータの取得(SQLServer)
  • この作業はSQLServerにDBを作成した人のみがやればいいです。
    [データベース]から”SQL Server 2008″をクリック⇒データベース名をクリックして”SQL データベースプロパティ”を開く。
    [メンテナンスツール]⇒[バックアップ]をクリック⇒ファイル名を指定して”ZIP形式バックアップ”にして[バックアップ]をクリックするとDBデータのダウンロードが始まる。

    ExpressWebのコントロールパネル(SQLServer)

    ExpressWebのコントロールパネル(SQLServer)

2.データをインポート(MySQL)

  • sqlファイルを開いてCREATE DATABASEから始まるクエリを削除
  • sqlファイルの”expressweb.jp”を新サイトほホスト名に置換
  • sqlをZIPに固める
  • WinserverのphpMyAdminにログインしてインポートタブをクリック
  • ブログデータをインポートする
  • phpMyAdminのインポート画面

    phpMyAdminのインポート画面


    ちなみにphpMyAdminへのアップロード制限は2MBだって・・・。かなりここヤバい気がしてきた。

3.データをインポート(SQLServer)

  • SQLServer Management Studio 2012 Express の導入。
  • WinserverのSQLServerはクライアントPCから直接SQLServer認証で接続する必要があるため、下記からSSMSEをダウンロードしてインストールする。
    https://www.microsoft.com/ja-JP/download/details.aspx?id=50003

  • SQLServerのデータベースリストア
  • 通常は以下のメニューからbakファイルを選べばスイスイ行くはずが、何故かローカルファイルが選択できない。

    リストア

    SQLServer Management Studio 2012によるリストア


    どうやらWinserver側でローカルからのリストアが制限されている様子。
    というかSQL打つしかできない。
    やっぱり、ここヤバかった・・・。
    だって自分のデータを持ち込むのに金を取るんだってさ↓。しかも5400円という高額。
    SQLServer 移転 [Winserver]
    ちょっとこれマジでありえねえだろ・・・。
    FAQにも一切書いてないから事前に調べようがないじゃん。酷いよ。
    と呪詛を吐いても詮無きことなので回避策を講じました。

  • [回避策]
    • bakファイルをローカルリストア
    • Expresswebから取得したbakファイルをローカルリストアするためにSQLServerを導入します。
      ただ一時作業のために余分なリソースを常駐させたくないので、常時インスタンス起動せずオンディマンドらしいSQL Server 2012 Express LocalDBを使うことにしました。
      マシン環境が潤沢な人は通常版SQLServerを使えば良いだけなので読み飛ばして良いです。
      インストールしたらSSMSEからbakファイルをリストアします。SSMSEの使い方は下記サイトを参考にしました。
      http://sqlazure.jp/r/sql-server/233/
      参照先のおかげで助かりました。ありがとうございます。だってアクセス指定子が「(localdb)\LocalDB Instance」なんて分からんって!

    • DBをスクリプトファイル化
    • データベースを右クリックして[タスク]→[スクリプトの生成]を選択してDBデータをファイル化する

      DBのスクリプトファイル化

      SQLServer Management Studio 2012によるDBスクリプトファイル化

    • SSMSE上でスクリプト実行
    • SSMSEの接続先をWinserverにしてから出力したスクリプトファイルを流します。
      これでやっと完了・・・。
      逆にWinserverから引っ越す場合は、やはりSSMSEにてDBをスクリプトファイル化する流れで行けるかと思います。

4.ファイルの復元

  • FTPによるファイルアップロード
  • バックアップしたファイルを解凍してFTPで”web”ディレクトリ配下に展開すれば完了です。
    時間がかかるので始まったら放置して別作業をするのが吉。
    ちなみにMySQLのDB名などを変えたらWordpress側のwp-config.phpもいじらないと駄目ですよ。

で、WinServerの使い勝手ですがExpresswebの3倍の価格ながら残念ながらパフォーマンスも3倍とは行かないようです。
あとやたら手作り感が半端ないです。SQLServerを使いたい場合はメールに必要事項を書いて送ってくれってノリです。
しかも前述したようにDBのリストアみたいな簡単な作業すらユーザー側には開放されておらず、金くれれば代行するぞとか平気で書いてある有様。
調べたら10人ぐらいしかいない会社みたいなので、まあむべなるかなって感じなのですが、正直Expresswebから比べるとかなり落ちると言わざるを得ません。
1年払いしてしまったので仕方なく使いますが、正直オススメはしません。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です