Macでの開発環境の設定 〜 apacheの設定 〜
Macにapacheをインストールした時の設定です。
ソースからコンパイルした時のconfigureは以下になります。
1 |
./configure --prefix=/Users/hashizume/apps/app/httpd/
|
Macでの開発環境の設定 〜 MySQLの設定 〜
Macに開発環境Apache、PHP、MySQLを構築するのにまずは
MySQLから、インストールしてみました。
で、Macの環境が汚れるのがいやなのでなるべく汚さないように考えて
- ソースファイルからのコンパイル
- prefixを設定して特定のフォルダにインストールする
という決まりでインストールするようにしました。
MySQLをインストールしたときのconfigureの内容です。
1 |
./configure --prefix=/Users/hashizume/apps/app/mysql/ --with-plugins=partition,innobase,innodb_plugin,myisam --with-fast-mutexes |
後は、make、make installでインストールできるのですが
開発環境でも、念のためにmaster、slave環境にしたかったので
mysql_install_dbのコマンドの2つのフォルダに対して実行しました。
1 2 |
./mysql_install_db --user=mysql --datadir=/Users/hashizume/apps/var/mysql/master ./mysql_install_db --user=mysql --datadir=/Users/hashizume/apps/var/mysql/slave |
こんな風に
で、mysqld_multiを使って2つのmysqldサービスを管理しようしたのですが、
mysql-5.1.50をインストールして使ってみたのですがどうもうまくいかない・・・
理由がわからん
ということで、mysqld_safeを使って別ポートでの起動をかければ同じことなのでいいやということで簡単にmysqld_safeを使って別ポートで起動するためのcnfファイルを2つ作成
それがこれ
1 2 3 4 5 6 7 8 9 10 |
[mysqld] server-id = 1 log-bin [mysqld_safe] socket = /tmp/mysql_master.sock port = 3307 pid-file = /Users/hashizume/apps/var/mysql/master/mysql.pid datadir = /Users/hashizume/apps/var/mysql/master language = /Users/hashizume/apps/app/mysql/share/mysql/japanese |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
[mysqld] server-id = 2 read_only master-host=127.0.0.1 master-port=3307 master-user=repl master-password=slavepass report-host=slave [mysqld_safe] socket = /tmp/mysql_slave.sock port = 3308 pid-file = /Users/hashizume/apps/var/mysql/slave/mysql.pid datadir = /Users/hashizume/apps/var/mysql/slave language = /Users/hashizume/apps/app/mysql/share/mysql/japanese |
それぞれのcnfファイルを使って起動するためのコマンドがこちら
1 2 |
mysqld_safe --defaults-extra-file=/Users/hashizume/apps/var/mysql/etc/my_master.cnf & mysqld_safe --defaults-extra-file=/Users/hashizume/apps/var/mysql/etc/my_slave.cnf & |
あとは、レプリケーションの設定をすれば終了!!
Macでの開発環境の設定 〜 screen 〜
Macで開発するのにもう1つ必須なものですが、screenです。
使いこなせてないですが・・・
自分が使っている.screenrcをさらします。
これは、どこからとってきたのか全く覚えてないです
以下が、使っている.screenrcです