2009-07-16 14 views
8

Tôi di chuyển sang máy mới và sử dụng trợ lý di chuyển để sao chép trên các tệp của tôi (có vẻ như sao chép qua DB) nhưng tôi phải sử dụng macports để cài đặt Mysql (trong khi lần cuối tôi biên dịch từ nguồn qua hướng dẫn của Dan Benjamin). Đối với một số lý do, mysql là liên tục ném các lỗi sau đây;Cài đặt mysql trên báo: "Không thể kết nối với máy chủ MySQL cục bộ thông qua ổ cắm"

Không thể kết nối đến máy chủ MySQL địa phương thông qua ổ cắm '/opt/local/var/run/mysql5/mysqld.sock' (2)

Nó làm điều này không có vấn đề gì tôi cố gắng, đã bao gồm thiết lập socket trong /opt/local/etc/mysql5/my.cnf. Trước đây tôi đã quản lý để tạm thời sửa lỗi này bằng cách khởi động lại máy, nhưng ngay bây giờ nó chỉ không muốn biết, mặc dù mysql grep nói với tôi tôi dường như có một pid;

0 46  1 0 0:00.01 ??   0:00.01 /opt/local/bin/daemondo --label=mysql5 --start-cmd /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper start ; --stop-cmd /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper stop ; --restart-cmd /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper restart ; --pid=none 
    0 70  1 0 0:00.01 ??   0:00.01 /bin/sh /opt/local/lib/mysql5/bin/mysqld_safe --datadir=/opt/local/var/db/mysql5 --pid-file=/opt/local/var/db/mysql5/localhost.pid 
74 100 70 0 0:09.22 ??   1:02.68 /opt/local/libexec/mysqld --basedir=/opt/local --datadir=/opt/local/var/db/mysql5 --user=mysql --pid-file=/opt/local/var/db/mysql5/localhost.pid --socket=/tmp/mysql.sock 
501 66217 65266 0 0:00.00 ttys001 0:00.00 grep mysql 

Làm cách nào để khắc phục sự cố này? Có bước nào tôi có thể thực hiện tiếp theo không? Tôi đã thử một vài tuần và tôi đã đọc tất cả các bài đăng trên blog có liên quan, vì vậy tôi hoàn toàn không có ý tưởng.

Trả lời

15

Đây là cách sau khi thực tế, nhưng đây là những gì tôi đã làm:

touch /opt/local/var/run/mysql5/mysqld.sock 
vi /opt/local/etc/mysql5/my.cnf 

Thêm các dòng sau để my.cnf:

[mysqld_safe] 
socket = /opt/local/var/run/mysql5/mysqld.sock 

[client] 
socket = /opt/local/var/run/mysql5/mysqld.sock 

này sẽ cho phép bạn để kết nối. Điều này làm việc cho tôi trên cả Leopard và Snow Leopard.

+0

Làm việc đối với tôi sau nhiều nỗ lực khác. Chỉ có sự khác biệt là tôi đã sử dụng 'sudo vim' để sửa đổi tệp. Cảm ơn bạn. –

2

Rob là chính xác. Xem liên kết này cho đầy đủ hơn giải thích: https://discussions.apple.com/docs/DOC-3082

Lưu ý đặc biệt là nhận xét này mà gắn liền với vấn đề của bạn:

Đường dẫn mặc định cho các ổ cắm MySQL là không thích hợp với hệ điều hành MacOS X. Cho đến khi nó được thay đổi, MySQL sẽ không có thể giao tiếp ...

vì vậy, làm những gì Rob nói (mặc dù nó có thể khác nhau cho Lion), và khởi động MySQL của bạn:

sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist 

EDIT: Cũng xem liên kết này: http://dev.mysql.com/doc/refman/4.1/en/problems-with-mysql-sock.html

EDIT: Xem câu hỏi này: MySQL Server does not start on Raspberry Pi