[Mac]DropboxでxamppのデータをWinとシェア

xamppデータをDropboxでシェア。基本的なやり方は 前回のWin とほぼ同じ。違うのはファイルの場所とパーミッション設定くらい。
でもwinとは違ってmysql起動の挙動がおかしかったりで「本当にこのやり方でいいの?」って感じで不安がある…(-_-;) 一先ず動きはするので良しとする。


事前準備

Dropboxとxamppを用意。(詳細は省略)

一連の流れ

  1. xamppのhtdocsとmysqlのデータをDropbox内へ移動
  2. htdocsとmysqlの設定ファイル内のパス情報を変更
  3. mysqlファイルのパーミッションの変更
  4. xampp の Apache と MySQL の起動確認

01. xamppのhtdocsとmysqlのデータをDropbox内へ移動

xampp-mac_dropbox-share02

xampp-mac_dropbox-share03

すでに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の設定ファイル内のパス情報を変更

xampp-mac_dropbox-share01

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-mac_dropbox-share04

設定ファイル内のパスを変更しただけではこの画面より先に進めない…(xamppのコントロールパネルもmysqlが赤いランプのままで起動してるかどうかわからない…)

xampp-mac_dropbox-share05

Dropbox内の mysql データがある「/Users/[user]/Dropbox/!SyncData/xampp/mysql/data/」とその中身のパーミッションを変更する。

やり方は対象のファイルを選択 > Command+I > everyoneのアクセス権を「読み/書き」へ変更でok。

04. xampp の Apache と MySQL の起動確認

Apache は xampp のコントロールパネルからも起動すれば緑ランプ付いて「起動してます!」ってわかるけど、MySQL は data の位置を変えたせいなのか、起動していても「Stopped」となっていてコントロールパネルからではちゃんとした状態を確認できなくなってしまった…

現状ではその動作を直す術がわからなかったので、ネットワークユーティリティを用いて MySQL の状態を確認する方法を取りました。

xampp-mac_dropbox-share06

ネットワークユーティリティの場所はOSのバージョンによって異なるらしく、自分の環境では以下にあった。

OS X EL Capitan(v10.11.4)/ネットワークユーティリティの場所

  • /System/Library/CoreServices/Applications/Network Utility.app

xampp-mac_dropbox-share07

xamppのコントロールパネルで MySQL > Configure から使用ポートを確認して、ネットワークユーティリティの Portscan から 127.0.0.1 に対してそのポートスキャンのテストをする。
この画像はMySQLが起動してない状態。

xampp-mac_dropbox-share08

起動すると「Open TCP Port: 3306 mysql」のように先ほどとは違う状態が表示される。

コントロールパネルの MySQL が正しく表示されていない現象はナゾ。後日わかれば追記します。(わかる方がいればご教授いただけると大変助かりますm(_ _)m)
たぶんどっかしらのファイル内のパス変更だとは思うんだけどもなー…

xampp-mac_dropbox-share09

xampp-mac_dropbox-share10

コントロールパネルパネルのナゾはありつつも Apache と MySQL の起動確認はできたので一応これで共有完了。

MySQLの終了方法

xampp の MySQL のコントロールパネル状態がちゃんと同期できてないとここからでは終了できないのでアクティビティモニタを使用。

xampp-mac_dropbox-share11

アクティビティモニタの場所はこちら。

  • /Applications/Utilities/Activity Monitor.app

xampp-mac_dropbox-share12

xampp-mac_dropbox-share13

アクティビティモニタ > CPU > mysqld」を終了でok。

xampp-mac_dropbox-share14

先ほど使用したネットワークユーティリティでチェックすれば停止してるかわかる。

なんか無理やり感ハンパなくてスマートじゃないのが気持ち悪いなぁ…(~_~;)

あとがき

Dropboxでのデータシェア、htdocs は良いけど mysql はしない方が良いかも。ファイルのパーミッションが元に戻ったり win と mac でデータベースの中身が違ったりとよくわからない状態に… 設定が足りないのか何なのか… 同OS同士なら上手くいくのか、mac側が MANP の方が安定するのかとか色々考えるけど実行はまた後日… 検証不足で申し訳ないですm(_ _;)m

参考サイト

Share