[macOS] DropboxでxamppのデータをWinとシェア
xamppデータをDropboxでシェア。基本的なやり方は 前回のWin とほぼ同じ。違うのはファイルの場所とパーミッション設定くらい。
でもwinとは違ってmysql起動の挙動がおかしかったりで「本当にこのやり方でいいの?」って感じで不安がある…(-_-;) 一先ず動きはするので良しとする。
スマホで見る
目次
事前準備
Dropboxとxamppを用意。(詳細は省略)
一連の流れ
- xamppのhtdocsとmysqlのデータをDropbox内へ移動
- htdocsとmysqlの設定ファイル内のパス情報を変更
- mysqlファイルのパーミッションの変更
- xampp の Apache と MySQL の起動確認
01. xamppのhtdocsとmysqlのデータをDropbox内へ移動
すでにWin側で同ファイルが移動済みであればそのままでも削除でもok。
xampp対象ファイル
- /Applications/XAMPP/xamppfiles/htdocs
- /Applications/XAMPP/xamppfiles/var/mysql
Dropbox内の移動先例
- /Users/[user]/Dropbox/!SyncData/xampp/htdocs
- /Users/[user]/Dropbox/!SyncData/xampp/mysql/data
02. htdocsとmysqlの設定ファイル内のパス情報を変更
htdocs と mysql の設定ファイルのパスを変更。
/Applications/XAMPP/xamppfiles/etc/httpd.conf
- 229: DocumentRoot “/Applications/XAMPP/xamppfiles/htdocs“
- 230: <Directory “/Applications/XAMPP/xamppfiles/htdocs“>
- ↓
- 229: DocumentRoot “/Users/[user]/Dropbox/!SyncData/xampp/htdocs“
- 230: <Directory “/Users/[user]/Dropbox/!SyncData/xampp/htdocs“>
/Applications/XAMPP/xamppfiles/etc/my.cnf
- 127: innodb_data_home_dir = /Applications/XAMPP/xamppfiles/var/mysql/
- 128: innodb_data_file_path = ibdata1:10M:autoextend
- 129: innodb_log_group_home_dir = /Applications/XAMPP/xamppfiles/var/mysql/
- ↓
- 127: datadir = /Users/[user]/Dropbox/!SyncData/xampp/mysql/data/(追記)
- 128: innodb_data_home_dir = /Users/[user]/Dropbox/!SyncData/xampp/mysql/data/
- 129: #innodb_data_file_path = ibdata1:10M:autoextend
- 130: innodb_log_group_home_dir = /Users/[user]/Dropbox/!SyncData/xampp/mysql/data/
03. mysqlファイルのパーミッションの変更
設定ファイル内のパスを変更しただけではこの画面より先に進めない…(xamppのコントロールパネルもmysqlが赤いランプのままで起動してるかどうかわからない…)
Dropbox内の mysql データがある「/Users/[user]/Dropbox/!SyncData/xampp/mysql/data/
」とその中身のパーミッションを変更する。
やり方は対象のファイルを選択 > Command+I > everyoneのアクセス権を「読み/書き」へ変更でok。
04. xampp の Apache と MySQL の起動確認
Apache は xampp のコントロールパネルからも起動すれば緑ランプ付いて「起動してます!」ってわかるけど、MySQL は data の位置を変えたせいなのか、起動していても「Stopped」となっていてコントロールパネルからではちゃんとした状態を確認できなくなってしまった…
現状ではその動作を直す術がわからなかったので、ネットワークユーティリティ
を用いて MySQL の状態を確認する方法を取りました。
ネットワークユーティリティの場所はOSのバージョンによって異なるらしく、自分の環境では以下にあった。
OS X EL Capitan(v10.11.4)/ネットワークユーティリティの場所
- /System/Library/CoreServices/Applications/Network Utility.app
xamppのコントロールパネルで MySQL > Configure から使用ポートを確認して、ネットワークユーティリティの Portscan から 127.0.0.1 に対してそのポートスキャンのテストをする。
この画像はMySQLが起動してない状態。
起動すると「Open TCP Port: 3306 mysql」のように先ほどとは違う状態が表示される。
コントロールパネルの MySQL が正しく表示されていない現象はナゾ。後日わかれば追記します。(わかる方がいればご教授いただけると大変助かりますm(_ _)m)
たぶんどっかしらのファイル内のパス変更だとは思うんだけどもなー…
コントロールパネルパネルのナゾはありつつも Apache と MySQL の起動確認はできたので一応これで共有完了。
MySQLの終了方法
xampp の MySQL のコントロールパネル状態がちゃんと同期できてないとここからでは終了できないのでアクティビティモニタ
を使用。
アクティビティモニタの場所はこちら。
- /Applications/Utilities/Activity Monitor.app
「アクティビティモニタ > CPU > mysqld
」を終了でok。
先ほど使用したネットワークユーティリティでチェックすれば停止してるかわかる。
なんか無理やり感ハンパなくてスマートじゃないのが気持ち悪いなぁ…(~_~;)
あとがき
Dropboxでのデータシェア、htdocs は良いけど mysql はしない方が良いかも。ファイルのパーミッションが元に戻ったり win と mac でデータベースの中身が違ったりとよくわからない状態に… 設定が足りないのか何なのか… 同OS同士なら上手くいくのか、mac側が MANP の方が安定するのかとか色々考えるけど実行はまた後日… 検証不足で申し訳ないですm(_ _;)m