2015-11-17 9 views
5

Ich habe einen Mac Pro Server mit OS X Yosemite, vor ein paar Tagen haben wir ein Upgrade auf OS X El Capitan. Das Problem tritt auf, wenn ich versuche, MySQL neu zu installieren. Ich ging zur offiziellen MySQL-Seite und lud die neueste Version (5.7.9) in ein DMG-Paket und installierte es normal.
Nach der Installation und den Server neu starten, der MySQL-Server nicht automatisch startet und wenn manuell erhalte ich beginnen:MySQL 5.7.9 unter OS X El Capitan: FEHLER Der Server beendet, ohne die PID-Datei zu aktualisieren

ERROR! The server quit without updating PID file (/usr/local/mysql/data/macServer.pid) 

Ich habe versucht, viele Lösungen über das Internet:

After MySQL install via Brew, I get the error - The server quit without updating PID file

http://coolestguidesontheplanet.com/mysql-error-server-quit-without-updating-pid-file/

PID error on mysql.server start?

MySQL pid ended (cannot start mysql)

Ich habe versucht, die mysql.server restart verwenden, den Server neu starten. Entfernen Sie *.err Dateien und auch ich habe versucht, meine eigene PID-Datei zu erstellen, aber es wurde automatisch entfernt.

Es wurde eine mögliche Lösung vollständig MySQL deinstallieren und neu installieren wieder: http://bytearrays.com/completely-uninstall-mysql-mac-osx/

Ein anderes die .plist, aber diese Dateien waren identisch mit den angebotenen Lösungen zu ändern war, so dass es nicht mein Problem lösen kann.

Und immer noch kann ich MySQL Server nicht starten.

Ich denke, zwei Möglichkeiten: In einer Hand könnte sein, dass ich nicht komplett MySQL deinstalliert habe und da etwas schlechtes tut und auf der anderen Seite ist das Ausnutzen der /etc/my.cnf Datei das Problem.

Ich bin schon seit 2 Tagen festgefahren. Ich weiß nicht, was ich tun soll, um den Server zu betreiben.

Edit 1: Der Ausgang sudo mysqld --user=mysql der Ausführung ist:

simidat-apps:~ admin$ sudo mysqld --user=mysql 
Password: 
2015-11-18 9:08:36 140735160397824 [Note] mysqld (mysqld 10.1.8-MariaDB) starting as process 81030 ... 
2015-11-18 9:08:36 140735160397824 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive 
2015-11-18 9:08:36 140735160397824 [ERROR] mysqld: File '/usr/local/var/mysql/aria_log_control' not found (Errcode: 13 "Permission denied") 
2015-11-18 9:08:36 140735160397824 [ERROR] mysqld: Got error 'Can't open file' when trying to use aria control file '/usr/local/var/mysql/aria_log_control' 
2015-11-18 9:08:36 140735160397824 [ERROR] Plugin 'Aria' init function returned error. 
2015-11-18 9:08:36 140735160397824 [ERROR] Plugin 'Aria' registration as a STORAGE ENGINE failed. 
2015-11-18 9:08:36 140735160397824 [Note] InnoDB: Using mutexes to ref count buffer pool pages 
2015-11-18 9:08:36 140735160397824 [Note] InnoDB: The InnoDB memory heap is disabled 
2015-11-18 9:08:36 140735160397824 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 
2015-11-18 9:08:36 140735160397824 [Note] InnoDB: Memory barrier is not used 
2015-11-18 9:08:36 140735160397824 [Note] InnoDB: Compressed tables use zlib 1.2.5 
2015-11-18 9:08:36 140735160397824 [Note] InnoDB: Using CPU crc32 instructions 
2015-11-18 9:08:36 140735160397824 [Note] InnoDB: Initializing buffer pool, size = 128.0M 
2015-11-18 9:08:36 140735160397824 [Note] InnoDB: Completed initialization of buffer pool 
2015-11-18 9:08:36 140735160397824 [ERROR] InnoDB: ./ibdata1 can't be opened in read-write mode 
2015-11-18 9:08:36 140735160397824 [ERROR] InnoDB: The system tablespace must be writable! 
2015-11-18 9:08:36 140735160397824 [ERROR] Plugin 'InnoDB' init function returned error. 
2015-11-18 9:08:36 140735160397824 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 
2015-11-18 9:08:36 140735160397824 [Note] Plugin 'FEEDBACK' is disabled. 
2015-11-18 9:08:36 140735160397824 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded 
2015-11-18 9:08:36 140735160397824 [ERROR] Unknown/unsupported storage engine: InnoDB 
2015-11-18 9:08:36 140735160397824 [ERROR] Aborting 

ich vergessen, diesen Fehler bei der anfänglichen Frage zu stellen, so scheint es wie ein Fehler auf InnoDB (ich weiß nicht, was es ist und wenn mir jemand erklären kann, worum es geht, werde ich sehr dankbar sein. Auch ich suchte nach diesem Fehler über das Internet, ich erinnere mich nicht, wo ich die Lösung sah, aber ich muss jede InnoDB Log-Datei (ib* Dateien) entfernen und überraschend kann ich keine Log-Datei finden, so dass ich nicht entfernen konnte etwas. Ich denke, es könnte eine Erlaubnis Probleme sein, aber welche Berechtigungen für welchen Benutzer?

+0

starten Sie bitte # mysqld --user = mysql und veröffentlichen Sie die Ausgabe, oder # mysqld --user = root –

+0

Ich habe die Frage mit solchen Befehlsergebnissen bearbeitet. –

+0

Aus dem Protokoll scheint es, dass die Berechtigungen in der Datei "ibdata1" oder in dem Verzeichnis, das sie enthält, falsch sind. –

Antwort

3

Ihr Problem ist eigentlich nicht Mysql, sondern eher mit MariaDBs Schema. Das Problem sind die Berechtigungen für die Datei aria_log_control.

I installiert mysql/MariaDB über brew und damit I:

  1. Reset perms bis 775 (sudo chmod 775/usr/local/var/mysql/aria_log_control`)
  2. die Protokolldatei gelöscht (z.B.rm /usr/local/var/mysql/*.home.err)
  3. Start/Stopp der mysqld

Other sources Anspruch, dass Sie die mysql dir entfernen müssen. Dies war nicht der Fall für mich.

+0

Ich habe das versucht - schien eine temporäre Lösung bis zum Neustart zu sein ... – featherbelly

0

Die andere Sache zu überprüfen ist, dass die Berechtigungen für alle übergeordneten Verzeichnisse über dem mysql-Datenverzeichnis korrekt sind.

Für z. Überprüfen Sie, ob die Berechtigungen für/var korrekt sind und ob die Berechtigungen für/var/lib/korrekt sind.

In meinem Fall waren meine/var-Berechtigungen durcheinander, und der Benutzer "mysql" konnte überhaupt nicht auf das var-Verzeichnis zugreifen.

Eine Möglichkeit zur Plausibilitätsprüfung besteht darin, zu einem normalen Benutzer zu wechseln und sicherzustellen, dass der reguläre Benutzer nach/var und nach/var/lib wechseln kann (vorausgesetzt, das mysql-Datenverzeichnis befindet sich in/var/lib).