2016-03-22 14 views
9

một vài ngày trở lại Tôi để cho brew cập nhật tất cả các hình của tôi như mọi khi nhưng lần này mysqld không bắt đầu sao lưu lại.MySQLd không bắt đầu sau khi nâng cấp brew từ 5.6 đến 5.7

Đây là thông báo lỗi:

2016-03-22T13:58:22.515719Z 0 [ERROR] Fatal error: mysql.user table is damaged. Please run mysql_upgrade. 
2016-03-22T13:58:22.515819Z 0 [ERROR] Aborting 

Nhưng kể từ khi tôi không thể nhận được các máy chủ bắt đầu, tôi không thể có được mysql_upgrade chạy:

mysql_upgrade: Got error: 2013: Lost connection to MySQL server at 'reading initial communication packet', system error: 102 while connecting to the MySQL server 
Upgrade process encountered error and will not continue. 

Vì vậy, những gì tôi có thể làm gì để có được điều này hoạt động trở lại? Có phải một brew uninstall mysql và cài đặt lại trợ giúp theo bất kỳ cách nào không?

Trả lời

2

Tôi đã kết thúc đổi tên thư mục cơ sở dữ liệu của mình, chạy mysql_install_db, sao chép thư mục cơ sở dữ liệu mới mysql vào thư mục cơ sở dữ liệu mysql cũ của tôi và khởi động lại. Tôi chắc chắn đây là Hella bẩn nhưng tốt, nó làm việc :)

24

Đầu tiên, hãy bắt đầu mysql của bạn mà không đọc các bảng người dùng: mysqld --skip-grant-tables

Sau đó chạy mysql_upgrade mà bây giờ sẽ chạy trơn tru.

Điểm dừng tiếp theo mysqld: killall mysqld.

Bây giờ bạn sẽ có thể khởi động lại dịch vụ mysql của mình một lần nữa.

+0

Trên Ubuntu 16.4 LTS, tôi cần tạo thư mục/var/run/mysql theo cách thủ công trước, nếu không nó sẽ không bắt đầu. – Zefiro

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