私はMacOS X Mavericksを実行しています、そこで私は手動でインストールによってMAMPスタックを作成しました mysql5-server
、 php5
など、MacPortsの下で。私は最近この設定をにアップグレードすることを余儀なくされました mysql56-server
そして php56
(WordPressのCherry Frameworkのインストールによる)私は以下のリンクで提供された指示に従うことによってそうしました。
https://trac.macports.org/wiki/howto/MAMP
私はまだ私の古いMAMP設定を保存していることに注意してください。つまり、私は mysql5-server
、 php5
など、MacPortsの下で、しかし、代わりにApache2とMySQLサーバを起動するために「古い」コマンドを使う代わりに、私は今次のコマンドを使います。
sudo port load apache2
sudo port load mysql56-server
先週のデフォルトパラメータのいくつかを変更した後まで、すべてが新しい設定で問題なく動作していました。 /opt/local/etc/php56/php.ini
ファイル、私は私のデータベースへの接続を失いました。変更したパラメータは
< max_time_input = 60 ; (from)
> max_time_input = -1 ; (to)
< upload_max_filesize = 2M ; (from)
> upload_max_filesize = 8M ; (to)
N.B.のデフォルトのソケット値 pdo_mysql
、 mysql
そして mysqli
(の中に /opt/local/etc/php56/php.ini
file)はそれぞれ以下の値に設定されます。
pdo_mysql.default_socket=/opt/local/var/run/mysql56/mysqld.sock
mysql.default_socket=/opt/local/var/run/mysql56/mysqld.sock
mysqli.default_socket=/opt/local/var/run/mysql56/mysqld.sock
私は最初に削除することでデータベース接続の問題を解決しました skip-networking
下のオプション [mysqld]
次の行を /opt/local/etc/mysql56/my.cnf
。
[mysqld]
< skip-networking ; (removed)
> socket = /opt/local/var/run/mysql56/mysqld.sock ; (added)
また、私はすべての参照を変更しました localhost
に 127.0.0.1
私のWordPressの設定ファイルで。これで私のデータベースの問題は解決しましたが、私の設定は '古い' MAMPスタック(実行中)に戻ったことに気付きました。 php5
の代わりに php56
、そして mysql5-server
の代わりに mysql56-server
)私は機能を実行することによってこれを確認しました phpinfo()
PHPスクリプトで。 MAMPスタックを新しい設定に再設定しようとする試みはすべて失敗したことに注意してください。つまり、上記のリンクで提供されている指示を何の役にも立たないように繰り返してみました。また、次のコマンドを使って手動でApache2 Serverをロードしようとすると、
sudo /opt/local/apache2/bin/apachectl start
次のようなエラーが表示されます。
(48)Address already in use: make_sock: could not bind to address [::]:80
(48)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
自分の設定を壊すために何かをしたかどうかはわかりませんが、PHPパラメータの変更がそのような動作を引き起こすとは思われません。さらに、データベースサーバーへの接続が切断されたのは、次のような理由によるものと思われます。 mysql
指している mysql5-server
(存在するネットワークソケットに依存します) mysql56-server
。私はこれによって生成された出力を介してこれを確認しました phpinfo()
機能は前述のとおりです。
MacPortsを再インストールすることを除いて、この問題を解決する方法に関するどんな助け/アドバイスでも評価されるでしょう。
phpinfo()
古いMAMP設定が(何らかの理由で)バックグラウンドで実行されていたためにApache 2サーバーを手動で起動できなかったためです。sudo /opt/local/apache2/bin/apachectl start
コマンドプロンプトでこの問題は、「古い」MAMP構成のApache 2サーバーを停止してから、Mac経由でApache 2サーバーをロードすることで解決されました。port
コマンド。