#author("2024-09-02T06:35:21+00:00","default:iseki","iseki")
** データベースの移行 [#pb436067]
*** MySQL4 → MySQL5 [#t3c42596]
+ MySQL5 を MySQL4と被らないようにインストールする.
+ MySQL5 のデータベースを作成する(初期化する).
  # /usr/local/mysql5/bin/mysql_install_db --user=mysql --ldata=/var/mysql5
  # cp support-files/my-medium.cnf /var/mysql5/my.cnf  
     注: 通常は /etc/my.cnf にコピー./etc/my.cnf があればそちらが優先される
  # chown mysql /var/mysql5/my.cnf 
  # /etc/init.d/mysql5 を作る
+ MySQL4 の移行するデータベース(xoops)をダンプする.
  # /usr/local/mysql/bin/mysqldump -x xoops -u root -p > xoops.dump
+ MySQL4 を止めて,MySQL5 を起動する.
 # /etc/init.d/mysql  stop
 # /etc/init.d/mysql5 start
 # /usr/local/mysql5/bin/mysqladmin -u root password パスワード
+ MySQL5 で受け入れ側となる個別のデータベースを作成し,権限を旧データベースと同様に設定する.
 mysql> create database xoops;
 mysql> grant all on xoops.* to xoops_user identified by 'xoops_pass';
+ データをリストアする.
 mysql> source xoops.dump        xoops.dump は mysqlが読める必要がある.
または
 # /usr/local/mysql5/bin/mysql xoops -u root -p < xoops.dump

*** コード系の変換   EUC → UTF-8 [#q3c26e39]
- 移行元のデータベースの CHARSETが latin1 で EUCで保存
- 移行先は utf8

**** [[移行先を UTF-8 にする>/MySQL/utf8]] [#u5d358e3]

**** データベースのストアとリストア [#f598b57c]
 % mysqldump source_db source_table --default-character-set=latin1 -x -u root -p > table_data
 % nkf -w table_data > table_data.utf8
table_data.utf8内のテーブル名,CHARSETを新しいデータベースに合わせる.
 % mysql dist_db -u root -p < table_data.utf8


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 ページ一覧 検索 最終更新   ヘルプ   最終更新のRSS