2015-11-17 21 views
5

Tôi có máy chủ Mac Pro với OS X Yosemite, cách đây vài ngày, chúng tôi đã nâng cấp lên OS X El Capitan. Vấn đề phát sinh khi tôi cố gắng cài đặt lại MySQL. Tôi đã đi đến trang MySQL chính thức và tải xuống phiên bản mới nhất (5.7.9) trong một gói DMG và cài đặt nó bình thường.
Sau khi cài đặt và khởi động lại máy chủ, máy chủ MySQL không tự khởi động và khi khởi động bằng tay tôi nhận được:MySQL 5.7.9 trên OS X El Capitan: LRI Máy chủ thoát mà không cập nhật tệp PID

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

Tôi đã cố gắng rất nhiều giải pháp trên 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)

Tôi đã cố gắng sử dụng mysql.server restart, khởi động lại máy chủ. Loại bỏ *.err tệp và tôi cũng đã cố gắng tạo tệp PID của riêng mình nhưng tệp đã bị xóa tự động.

Một giải pháp có thể được hoàn toàn gỡ bỏ cài đặt MySQL và cài đặt lại một lần nữa: http://bytearrays.com/completely-uninstall-mysql-mac-osx/

Một số khác là để thay đổi .plist, nhưng file này là giống với các giải pháp cung cấp nên nó không thể giải quyết vấn đề của tôi.

Và tôi vẫn không thể khởi động máy chủ MySQL. Tôi nghĩ rằng hai khả năng: Trong một mặt có thể là tôi đã không gỡ bỏ cài đặt hoàn toàn MySQL và có một cái gì đó làm điều xấu và mặt khác là ausence của tập tin /etc/my.cnf là vấn đề.

Tôi đã bị kẹt trong 2 ngày. Tôi không biết phải làm gì để chạy máy chủ.

Sửa 1: Sản lượng thực hiện sudo mysqld --user=mysql là:

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 

tôi quên đưa lỗi này tại các câu hỏi ban đầu, nó có vẻ như một lỗi trên InnoDB (Tôi không biết nó là gì và nếu ai đó có thể giải thích cho tôi thì tôi sẽ rất biết ơn). Ngoài ra tôi đã tìm lỗi này trên internet, tôi không nhớ nơi tôi đã xem giải pháp, nhưng tôi phải xóa mọi tệp nhật ký InnoDB (ib* tệp) và đáng ngạc nhiên là tôi không thể tìm thấy bất kỳ tệp nhật ký nào để tôi không thể xóa bất cứ điều gì. Tôi nghĩ rằng nó có thể là một vấn đề cho phép, nhưng những gì cho phép những gì người dùng?

+0

hãy bắt đầu # mysqld --user = mysql và đăng đầu ra, hoặC# mysqld --user = root –

+0

Tôi đã chỉnh sửa câu hỏi bằng kết quả lệnh như vậy. –

+0

Từ nhật ký, có vẻ như rõ ràng là các quyền này sai trong tệp 'ibdata1' hoặc trên thư mục chứa nó. –

Trả lời

3

Vấn đề của bạn không thực sự là Mysql, mà đúng hơn là với sơ đồ của MariaDB. Sự cố là quyền trên tệp aria_log_control.

Tôi đã cài đặt mysql/mariadb qua brew, và do đó I:

  1. reset perms đến 775 (sudo chmod 775/usr/local/var/mysql/aria_log_control`)
  2. xóa các tập tin đăng nhập (ví dụrm /usr/local/var/mysql/*.home.err)
  3. bắt đầu/ngừng mysqld

Other sources tuyên bố rằng bạn cần phải loại bỏ các thư mục mysql. Đây không phải là trường hợp của tôi.

+0

Tôi đã thử điều này - dường như là bản sửa lỗi tạm thời cho đến khi khởi động lại ... – featherbelly

0

Điều khác cần kiểm tra là các quyền trên tất cả thư mục mẹ phía trên thư mục dữ liệu mysql là chính xác.

Ví dụ: kiểm tra xem các điều khoản trên/var có đúng hay không và các quyền trên/var/lib/là đúng.

Trong trường hợp của tôi, các quyền của tôi/var bị sai lệch và người dùng "mysql" không thể truy cập thư mục var.

Một cách để kiểm tra thông tin này là chuyển sang người dùng thông thường và đảm bảo người dùng thông thường có thể cd vào/var và/var/lib (giả sử thư mục dữ liệu mysql nằm trong/var/lib).

Các vấn đề liên quan