Σφάλμα εκκίνησης διακομιστή MySql 'Ο διακομιστής τερμάτισε χωρίς ενημέρωση του αρχείου PID &#39,

Στο Snow Leopard, η εκκίνηση της MySQL εμφανίζει το ακόλουθο σφάλμα:

Ο διακομιστής τερμάτισε χωρίς να ενημερώσει το αρχείο PID.

my.cnf

[mysqld]
port            = 3306

socket          = /tmp/mysql.sock

skip-external-locking

key_buffer_size = 16K

pid-file=/var/run/mysqld/mysqld.pid

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

προσπαθήστε να βρείτε το αρχείο καταγραφής σας με κατάληξη ".err", θα πρέπει να υπάρχουν περισσότερες πληροφορίες. Μπορεί να είναι στο:

/usr/local/var/mysql/όνομα_υπολογιστή_σας.local.err

Πιθανότατα είναι πρόβλημα με τα δικαιώματα.

  1. Ελέγξτε αν εκτελείται κάποια περίπτωση mysql

ps -ef | grep mysql

αν ναι, θα πρέπει να τη σταματήσετε ή να τερματίσετε τη διεργασία

kill -9 PID

όπου PID είναι ο αριθμός που εμφανίζεται δίπλα στο όνομα χρήστη στην έξοδο της προηγούμενης εντολής

  1. Ελέγξτε την κυριότητα του /usr/local/var/mysql/

ls -laF /usr/local/var/mysql/

αν είναι ιδιοκτήτης ο root θα πρέπει να τον αλλάξετε σε mysql ή your_user

sudo chown -R mysql /usr/local/var/mysql/

Σχόλια (18)

Τι λέει το αρχείο καταγραφής σφαλμάτων; Πήρα αυτό το σφάλμα, και τελικά ήταν μια παλιά άκυρη ρύθμιση στο my.cnf, την οποία ανέφερε το αρχείο καταγραφής σφαλμάτων της mysql. Αν δεν πρόκειται για κακή ρύθμιση παραμέτρων, το αρχείο καταγραφής σφαλμάτων θα πρέπει τουλάχιστον να σας υποδείξει τη σωστή κατεύθυνση.

Λοιπόν, υποθέτω ότι ο OP το έχει διορθώσει σε αυτό το σημείο... αλλά ελπίζω ότι αυτό δείχνει στους άλλους που βλέπουν αυτό το σφάλμα προς τη σωστή κατεύθυνση.

Σχόλια (0)

Ελπίζω αυτό να λειτουργήσει για εσάς.

Αφού έλεγξα το αρχείο καταγραφής σφαλμάτων, βρήκα αυτό:

120309 17:42:49 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
120309 17:42:50 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/mysql/data/ is case insensitive
120309 17:42:50 [Warning] You need to use --log-bin to make --binlog-format work.
120309 17:42:50 [Note] Plugin 'FEDERATED' is disabled.
120309 17:42:50 InnoDB: The InnoDB memory heap is disabled
120309 17:42:50 InnoDB: Mutexes and rw_locks use GCC atomic builtins
120309 17:42:50 InnoDB: Compressed tables use zlib 1.2.3
120309 17:42:50 InnoDB: Initializing buffer pool, size = 16.0M
120309 17:42:50 InnoDB: Completed initialization of buffer pool
120309 17:42:50  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /usr/local/mysql/data/ib_logfile0
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
120309 17:42:50 mysqld_safe mysqld from pid file /usr/local/mysql/data/lu1s.local.pid ended

Και για να το λύσω, έδωσα δικαιώματα ιδιοκτησίας σε ολόκληρο το φάκελο mysql:

cd /usr/local
sudo chown mysql mysql
sudo chown mysql mysql-5.5.21-osx10.6-x86_64
sudo chown _mysql mysql
sudo chown _mysql mysql-5.5.21-osx10.6-x86_64

Στη συνέχεια (μπορείτε να το κάνετε και στη γραμμή εντολών), εφάρμοσα τα δικαιώματα (αφού έδωσα αυτή την ιδιοκτησία στους χρήστες _mysql και mysql) σε όλους τους περιεχόμενους φακέλους μέσα από το μενού "get info" του φακέλου στο /usr/local/mysql-5.5.21-osx10.6-x86_64 . Δεν χρειάζεται να το προσθέσετε αυτό στο ψευδώνυμο αφού είναι μόνο ένα ψευδώνυμο.

Το όνομα του φακέλου εξαρτάται από την έκδοση εγκατάστασης της mysql που έχετε.

Σχόλια (0)