IT仕事

レンタルサーバにあるXOOPSの本番環境をローカルのテスト環境/XAIOに移す手順

投稿日:

ローカルフォルダを上書きするので、手軽な方法でよいのでフォルダとDBのバックアップを取っておく。

まず、サーバ側
XOOPSテーマ、モジュール、Upload、Imagesの各フォルダをローカルのXAIOの同じ場所に上書きダウンロード
MySQLAdminでDBテーブルのバックアップ。生成されるSQLテキストをエディタにコピペしておく。念のため、テキストをEUCの文字コードで保存。

次に、ローカル側
MySQLAdminでXOOPS関連のテーブルを削除する
MySQLAdminでサーバ側でとったSQLテキストを使ってテーブルをCreate&Insertする
(ここで、自分の環境だとDefault Charset関係のエラーがでた。MySQLのバージョン違いで出た模様。単純にエラー部分をしらみつぶしに探して削除する必要があった。)

ここまでで、http://localhost/を表示してみて、サーバと同じように表示されることを確認。難しくなかった。

しかし、

管理画面に入ろうとすると、パスワードが違う旨が表示されて、ログインできない。
MySQLのバージョンのせいなのか、自分がパスワードを忘れてしまったからなのか。
XOOPSにはパスワードを紛失したときに管理者宛にメールで新規パスを送ってくれる親切機能もあるけど、XAIOはローカルでメール送信の環境がないため、使えない。
あれこれ試行錯誤で、ここから1時間浪費。

やがて以下のやり方を編み出す。
1.サイドバーのパスワードのブロックで、新規ユーザー登録。このときパスワードは「000」等、忘れない&シンプルなのを。
2.MySQLAdminで、今ほど登録された新規ユーザをxoops_usersテーブルから探す
3.見つかったレコードのpassフィールドにある文字(ハッシュされているので無意味な文字に見えるが正しい)をコピーする
4.xoops_usersテーブルから管理者ユーザを探し、passにペーストする
5.4でわかったユーザ名と、1で作ったパスワードでログインする
6.できた!

今回、ローカルDBをサーバDBの中身で総入れ替えしたけど、手間取ったので、xoops_usersテーブルの中身は、残しておくほうがよかったのかも。たぶん。

-IT仕事

執筆者:

関連記事

no image

TeamViewer「指定のネットワークアドレスではパートナーに接触できません」

TeamViewerの、リモートする側・される側のバージョンが違うと、リモートコンピュータのパートナーIDを入れて相手に接続しようとした場合に、 「指定のネットワークアドレスではパートナーに接触できま …

Google app scriptの「このアプリはブロックされます」問題にあたった

突然、新規に作成したスプレッドシートでGASのスクリプトを書いて実行しようとすると、「承認が必要です」とのダイアログボックスが表示され、承認操作のあとに、「このアプリはブロックされます」と表示され、ア …

【重要・ご対応のお願い】Chatwork APIリクエストの仕様変更についてのお知らせ

7/3の夕方ごろから、PADで作成したチャットワークのフローでエラーが出ていたので、あれっと思って調べたら、案の定、その日チャットワーク側でAPIの仕様変更があった。後から調べたら、事前に作業日付きの …

no image

Visual Studio 2005 Express Edition無償公開

窓の杜 – 【NEWS】「Visual Studio 2005 Express Edition」日本語正式版の一般向け無償公開開始 http://www.forest.impress.co …

Amazonへ出品している商品の、商品名だけを一括で変更したいときの手順

1.以下のページを参考に、出品レポートをダウンロード。商品名を一括で変更・編集する方法 – Amazon出品サービス / 出品に関する一般的な質問 – Amazonセラーフォー …