Truy cập Mysql bị từ chối lỗi


9

Tôi có một vấn đề phổ biến nhưng các giải pháp thông thường không hoạt động nên xin lỗi về những gì xuất hiện đầu tiên có vẻ giống như một câu hỏi được hỏi trước đó.

Tôi gặp lỗi sau khi cố gắng xem trang web của mình trên địa phương

    Access denied for user 'sitename'@'localhost' (using password: YES)

Thông tin đăng nhập bị sử dụng sai nhưng tôi không biết chúng đến từ đâu. Tôi đã kiểm tra ứng dụng / etc / local.xml và nó có tất cả thông tin đăng nhập chính xác. Tôi đã xóa tất cả các tệp xml khác khỏi thư mục (ngoại trừ config.xml). Tôi đã xóa nội dung của thư mục var (nhiều lần)

Tôi có các trang web magento khác hoạt động trên địa phương của mình vì vậy cài đặt máy chủ của tôi sẽ ổn. Tôi thực sự bối rối về điều này và không biết bước tiếp theo tôi nên làm là gì. Bất kỳ trợ giúp sẽ được đánh giá cao.


Tôi sẽ đi đến phương thức kết nối trong bộ điều hợp DB và ngay trước cuộc gọi đến phương thức kết nối, đặt một cái gì đó như: '$ e = new Exception (); Mage :: log ($ e-> getTraceAsString (), null, 'logname', true); ' nhận được dấu vết như thế này là nhỏ gọn hơn. Sau đó, trong dấu vết đó xem cho bất kỳ đường dẫn mã lẻ. Đồng thời đăng nhập thông tin xác thực được chuyển đến PDO.
Petar Dzhambazov

Câu trả lời:


8

Bạn cần phải làm cho người dùng sitename@localhostcó thể truy cập cơ sở dữ liệu và các bảng trong câu hỏi. Sử dụng SQL sau đây làm root hoặc superuser trên phiên bản MySQL để cấp các đặc quyền:

GRANT ALL ON magento_local.* TO 'sitename'@'localhost';

Để biết thêm thông tin về Tài trợ trong MYSQL, hãy xem hướng dẫn: http://dev.mysql.com/doc/refman/5.1/en/grant.html


Cảm ơn câu trả lời. Tôi đã đi qua tùy chọn này sớm hơn nhưng tôi không nghĩ rằng nó sẽ hoạt động. Bởi vì người dùng: 'sitename' và pass: 'yes' không phải là thông tin db chính xác / được chỉ định. Tôi cho rằng điều này không thực sự giải quyết vấn đề sai chi tiết đang được sử dụng hoặc bằng cách nào đó có thể tìm thấy chi tiết trong app / etc / local.xml sau có thể kết nối với db một lần với các chi tiết sai
triển vào

Có một sự khác biệt giữa việc truy cập trực tiếp mysql và qua 'localhost' qua mạng. Bạn cần cấp rõ ràng trên vị trí localhost.
philwinkle

2
nhớ và chạy: flush privilegessau lệnh cấp của bạn
Matthew Haworth

5

Trong trường hợp local.xml đang bị ghi đè tìm kiếm trang web của bạn cho các tệp có chứa một cái gì đó như <username>sitename</username>. Đối với loại công việc này, tôi thích ack :

ack --xml "<username>.*sitename.*</username>" app/

... hoặc thậm chí chỉ:

ack sitename app/

4

Hãy thử xóa bộ nhớ cache, có thể bạn đang sử dụng các lớp bộ đệm của bên thứ 3, vô hiệu hóa chúng. Tùy chọn cuối cùng là đổi tên ứng dụng / etc / local.xml và trang web mở, Magento sẽ chạy quá trình cài đặt, trong quá trình cài đặt cung cấp khóa mã hóa cũ từ local.xml.


1

Tất cả các câu trả lời khác là một cách tuyệt vời để thu hẹp tất cả các khả năng về vấn đề có thể xảy ra. Đối với điều này, tôi cảm thấy mỗi người trong số họ xứng đáng được bỏ phiếu. Họ không trực tiếp giải quyết vấn đề của tôi nên tôi cảm thấy mình nên tự trả lời như một phép lịch sự và cũng vì rất nhiều người sử dụng wordpress với magento.

Trang web đặc biệt này sử dụng wordpress như một mô-đun. Mô-đun này chứa thông tin đăng nhập db cũng như ứng dụng magento / etc / local.xml thông thường. Tôi đã không biết rằng mô-đun này được hiển thị khá nhiều trên tất cả các trang web và có liên quan đến cơ sở dữ liệu. Kết quả là nó làm cho nó không thể xem trang web mà không thay đổi các chi tiết ở đây.


0

Tôi đã có cùng một vấn đề, sau đây đã giải quyết điều này cho tôi:

  1. Tải xuống phiên bản gốc của Magento
  2. sao lưu ứng dụng của bạn / etc (ví dụ: app / _etc)
  3. Tải lên ứng dụng gốc / etc từ thư mục Magento gốc
  4. Truy cập trang web của bạn và thực hiện quy trình cài đặt Magento, tôi đã sử dụng tên cơ sở dữ liệu ban đầu, cài đặt cơ sở dữ liệu (người dùng / pw) và khóa mã hóa.
  5. Tải ứng dụng / etc / mô-đun của bạn vào thư mục ETC mới
  6. Sau khi cài đặt, tôi có thể đăng nhập và xóa bộ nhớ cache. Trang web đã hoạt động trở lại như trước đây.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.