问题
What should the file owner & group be of /usr/local/mysql
and all contained files & directories? MySQL was working fine, but after I did sudo chown -R $USER:staff /usr/local
to install Homebrew, MySQL couldn't automatically start on startup, and on the MySQL Preferences panel, I got "Warning: The /usr/local/mysql/data directory is not owned by the 'mysql' or '_mysql' user," and when I clicked Start MySQL Server, it didn't connect.
To fix this, I ran sudo chown -R _mysql:wheel /usr/local/mysql/data
. Then, I closed & opened System Preferences. The warning went away, and when I clicked Start MySQL Server, it started!
MySQL seems to be responding fine now, but I just guessed at this solution. Is what I did correct?
回答1:
Looks valid to me. This is what my mysql folder looks like:
drwxr-xr-x 17 root wheel 578 May 7 2010 .
drwxr-xr-x 8 root wheel 272 Jun 11 2010 ..
-rw-r--r-- 1 root wheel 17987 May 7 2010 COPYING
-rw-r--r-- 1 root wheel 5139 May 7 2010 EXCEPTIONS-CLIENT
-rw-r--r-- 1 root wheel 9339 May 7 2010 INSTALL-BINARY
-rw-r--r-- 1 root wheel 62989 May 7 2010 README
drwxr-xr-x 46 root wheel 1564 May 7 2010 bin
drwxr-x--- 15 _mysql wheel 510 Jan 21 08:15 data
drwxr-xr-x 4 root wheel 136 May 7 2010 docs
drwxr-xr-x 34 root wheel 1156 May 7 2010 include
drwxr-xr-x 22 root wheel 748 Jun 3 2010 lib
drwxr-xr-x 4 root wheel 136 May 7 2010 man
drwxr-xr-x 15 root wheel 510 May 7 2010 mysql-test
drwxr-xr-x 3 root wheel 102 May 7 2010 scripts
drwxr-xr-x 35 root wheel 1190 May 7 2010 share
drwxr-xr-x 29 root wheel 986 May 7 2010 sql-bench
drwxr-xr-x 16 root wheel 544 May 7 2010 support-files
How did you install MySQL it if it didn't hook everything up correctly itself?
EDIT: and this is the general flavor of the data folder:
drwxr-x--- 15 _mysql wheel 510 Jan 24 08:15 .
drwxr-xr-x 17 root wheel 578 May 7 2010 ..
-rw-rw---- 1 _mysql wheel 158773 Jan 24 08:16 $USER.local.err
-rw-rw---- 1 _mysql wheel 4 Jan 24 08:15 $USER.local.pid
drwx------ 6 _mysql wheel 204 Jun 16 2010 $SOME_DB_NAME1
drwx------ 6 _mysql wheel 204 Jun 8 2010 $SOME_DB_NAME2
drwx------ 15 _mysql wheel 510 Jan 18 11:23 $SOME_DB_NAME3
drwx------ 12 _mysql wheel 408 Jan 20 14:40 $SOME_DB_NAME4
-rw-rw---- 1 _mysql wheel 5242880 Jan 24 08:15 ib_logfile0
-rw-rw---- 1 _mysql wheel 5242880 Jan 24 08:15 ib_logfile1
-rw-rw---- 1 _mysql wheel 18874368 Jan 21 17:31 ibdata1
drwx------ 85 _mysql wheel 2890 Jun 3 2010 $SOME_DB_NAME5
drwx------ 85 _mysql wheel 2890 Jun 3 2010 $SOME_DB_NAME6
drwxr-x--- 71 _mysql wheel 2414 Jun 3 2010 mysql
drwx------ 21 _mysql wheel 714 Aug 31 17:27 $SOME_DB_NAME7
I don't run Homebrew on my machine, tho, so I dunno if this is of much help as far as that goes.
回答2:
I had the exact same problem and MattDiPasquale’s answer worked for me. I had to keep running mysqld
all the time to ensure MySQL was running properly. When I looked at MySQL in the System Preferences I realised I had the same error.
来源:https://stackoverflow.com/questions/4762543/what-user-should-own-usr-local-mysql-on-mac