web-dev-qa-db-ja.com

MySQLサーバーにPIDファイルを作成できません。権限が拒否されました

MySQLサーバーが起動せず、次のエラーが報告されます。

/ usr/local/mysql/bin/mysqld:ファイル '/usr/local/mysql/data/James-Barnhills-Mac-Pro.local.pid'を作成/書き込みできません(エラーコード:13)
サーバーを起動できません:PIDファイルを作成できません:権限が拒否されました

すべての権限は次のように再帰的に設定されます:

lrwxr-xr-x 1 _mysql wheel 27 Nov 22 09:25 mysql -> mysql-5.5.18-osx10.6-x86_64

しかし、それは始まりません。何度か再インストールしてみましたが、役に立ちませんでした。

Mac OSでrootとして実行していますが、MySQLには「data」フォルダに対する読み取り、書き込み、実行の権限があります。

5
James Barnhill

権限エラーは、ディレクトリがOctal Permission 0751に設定されているためです。これは、ユーザーは読み取りと書き込みを実行できますが、他のすべてのユーザーはできないことを意味します。あなたはユーザー_mysqlではないため、権限がありません。これを修正するには、2つのことを行うことができます。

  • Mysqldサービスを開始するために使用するコマンドの前にSudoを置くことで開始できます。

    Sudoサービスmysqld start

  • 権限を0771に再帰的に設定できます。これにより、wheel(管理者)グループがディレクトリに書き込むことができます。

3
Hunter Dolan

Mysqlをrootとして起動したからといって、実際にはそのユーザーとして起動したわけではありません。 /etc/my.cnfを確認し、mysqlデータディレクトリの所有者がパラメーターuser = mysql_ownerで指定されたものと同じかどうかを比較します。

たとえば「mysql」の場合、mysqlを開始する前にrootがそのユーザー(舞台裏)に切り替えます。

0