1: 2009-04-20 (月) 23:26:41 iseki |
2: 2009-04-21 (火) 00:47:54 iseki |
- | *** mySQL 操作メモ(一般) [#gf2d1c57] | + | ** データベースの移行 [#pb436067] |
- | **** 他のホストへ接続 [#m280297d] | + | *** MySQL4 → MySQL5 [#t3c42596] |
- | mysql -u netp_user -h 202.26.158.3 -p | + | |
- | | + | |
- | **** テーブル参照権限を与える [#wbad8c98] | + | |
- | grant references on netp_exam.* to netp_user identified by 'netp_pass'; | + | |
- | | + | |
- | **** select 権限を与える [#pe45836a] | + | |
- | grant select on netp_exam.* to netp_user identified by 'netp_pass'; | + | |
- | | + | |
- | - データベース一覧 | + | |
- | show databases; | + | |
- | | + | |
- | - テーブル一覧 | + | |
- | use データベース名; | + | |
- | show tables; | + | |
- | | + | |
- | - テーブル削除 | + | |
- | use データベース名; | + | |
- | drop table テーブル名; | + | |
- | | + | |
- | - 項目削除 | + | |
- | delete from テーブル名 where 条件; | + | |
- | 例: delete from mdl_log_display where module="quiz"; | + | |
- | | + | |
- | ** データベースのチェックとリペア [#hdefc0d1] | + | |
- | - データベースを止めてから,チェックを行う | + | |
- | # /etc/init.d/mysql stop | + | |
- | # /usr/local/mysql/bin/myisamchk /var/mysql/[DBNAME]/*.MYI | + | |
- | # /etc/init.d/mysql start | + | |
- | | + | |
- | ** データベースの移行 MySQL4 -> MySQL5 [#mac7abec] | + | |
| + MySQL5 を MySQL4と被らないようにインストールする. | | + MySQL5 を MySQL4と被らないようにインストールする. |
| + MySQL5 のデータベースを作成する(初期化する). | | + MySQL5 のデータベースを作成する(初期化する). |
| + データをリストアする. | | + データをリストアする. |
| mysql> source xoops.dump xoops.dump は mysqlが読める必要がある. | | mysql> source xoops.dump xoops.dump は mysqlが読める必要がある. |
- | + または | + | または |
| # /usr/local/mysql5/bin/mysql xoops -u root -p < xoops.dump | | # /usr/local/mysql5/bin/mysql xoops -u root -p < xoops.dump |
| | | |
- | *** データベースの移行 [#eef0fd3c] | + | *** コード系の変換 EUC → UTF-8 [#q3c26e39] |
| - 移行元のデータベースの CHARSETが latin1 で EUCで保存 | | - 移行元のデータベースの CHARSETが latin1 で EUCで保存 |
| - 移行先は utf8 | | - 移行先は utf8 |
- | % 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 | |
| | | |
- | ** UTF-8 で使用する場合 [#zfc6ad44] | + | **** 移行先を UTF-8 にする [#u5d358e3] |
| mysql> show variables like "char%"; | | mysql> show variables like "char%"; |
| +--------------------------+-----------------------------------------------+ | | +--------------------------+-----------------------------------------------+ |
| | character_sets_dir | /usr/local/mysql-5.0.67/share/mysql/charsets/ | | | | character_sets_dir | /usr/local/mysql-5.0.67/share/mysql/charsets/ | |
| +--------------------------+-----------------------------------------------+ | | +--------------------------+-----------------------------------------------+ |
| + | |
| + | **** データベースのストアとリストア [#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 |