MySQLをWindowsにインストール + mysqldumpでバックアップ + Xampp設定

インストール

MySQLのサイトで、
MySQL Community Edition → MySQL on Windows (Installer & Tools) → MySQL Installer
を選択して保存。

インストール時、
Server onlyを選択。Developer Machineを選択。

ポートはそのまま3306で変更せず。パスワードはとりあえず1234。

初期設定

別のPCがクライアントになるため、rootのホスト名を変える。ホスト名が違うと別ユーザー扱い。

パスが通っていないので、mysqlのフォルダから
mysql -u root -p1234
と入力して起動する。

rename user ユーザ名@ホスト名 to 新ユーザ名@新ホスト名
でできる。ただ、変えてしまってlocalhostを消すとlocalhostからアクセスできなくなってしまうので、
別に追加したほうがいい。今回はやらない。

ユーザーを追加する。
create user usr01 identified by ‘1234’;

確認。
select user,host from mysql.user;

ここではホストは%になっているのでネットワークを指定。(やらずにそのまま%でもOK)
rename user ‘usr01’@’%’ to ‘usr’@’192.168.11.%’;

もし、ユーザー作成時にパスを設定していない場合はパスのみ追加できる
set password for ‘usr01’@’192.168.11.%’ = password(‘xxx’);

権限の確認(現在のユーザ)
show grants;

あるいは、
show grants for ‘usr’@’192.168.11.%’
grant usage on *.* to ‘usr’@’192.168.102.%’となっている。(権限がない状態)

権限を付与する(指定ユーザがいないと新規で作成される。)
grant all privileges on *.* to ‘usr’@’192.168.11.%’;

Winでの再起動は管理者のプロンプトから、
net start/stop mysql57

ここからはworkbenchでもOK

MySQLのDB作成等

Xampp利用の場合

WindowsでPHPを利用する方法。ここではXamppを利用する。

ファイル・フォルダ

適当に解凍して、
setup_xampp.batをクリック。
xampp_start.exeをクリック。

今回は、
apache
htdocs
install
mysql(不要な消してしまっても大丈夫)
php
tmp
だけ残して、それ以外のフォルダは削除。

xampp-control.ini

[EnableModules]
で不要な箇所を0へ

ポート番号

動かない場合はだいたい、
ポートが使われていることが多い。SoftEtherなど。

\apache\conf\httpd.conf
Listen 81に変更

\apache\conf\extra\httpd-ssl.conf
Listen 441に変更

だいたいこの方法で直る。netstatで調べてみる。

基本的なバックアップ方法(mysqldump)

Winでバッチファイルをタスクリストで処理する場合。

cd C:\Users\Administrator\Desktop\xampp\mysql\bin
mysqldump -u root -p1234 db > C:\Users\Administrator\Desktop\backup.sql
pause

Xserver等でWordPressをバックアップの場合。

先ず、
mysql -h xxx -u xxx -pxxx
にてsshログインして、
mysqldump -u xxx -pxxx -h xxx db > xxx.sql
とする。ちなみに、構造のみの場合 -dオプション、WorkbechからならDump Structure Onlyを選択。

ローカル側では、先ずxxx.sqlを置換してパスを全て置き換える。
このような感じ。
http://okamurax.com
http://192.168.102.15/blog

その後、
create database xxx charset=utf8;
としてローカルのdbを作成して
mysql -u xxx -pxxx db < xxx.sql
としてローカルのdbに流し込む。

http://192.168.102.15/blog/wp-admin
にアクセスしてdb更新。

存在しないテーマなどは存在するものに変更。

ユーザはバックアップ元になるので注意
(ここではxserverのユーザになるということ)

実際のスクリプト