Phần này nói thêm về việc tìm các gói PHP có sẵn cho CentOS và điều đó sẽ phụ thuộc vào phiên bản cụ thể của CentOS mà bạn đang sử dụng [không chỉ là bản phát hành chính]. Bạn cũng có thể thực hiện "yumcung cấp" để tìm gói nào cung cấp một tệp nhất định. Bạn có thể thấy rằng phiên bản CentOS của bạn đã chuyển từ MySQL sang mariadb [không chắc liệu CentOS có thực hiện bước nhảy vọt đó hay không nhưng tôi biết ubuntu đã làm được]
Tôi đã thử sử dụng Centos 8 Playground tại đây trên KodeKloud để theo dõi Demo nhưng tôi gặp khó khăn khi cài đặt httpd và php bằng lệnh
$ sudo yum cài đặt -y httpd php php-mysql
Nó không hoạt động trên sân chơi và đưa ra lỗi sau
[email được bảo vệ] ~ ➜ Sudo yum install -y httpd php php-mysql
Kiểm tra lần cuối siêu dữ liệu hết hạn. 0. 10. 08 trước ngày Thứ năm 18 tháng 8 01. 32. 28 2022.
Không phù hợp để tranh luận. php-mysql
Lỗi. Không thể tìm thấy một trận đấu. php-mysql
Vì vậy, tôi đã cố gắng cài đặt riêng từng dịch vụ, trước tiên là httpd, sau đó là php nhưng vẫn gặp lỗi tương tự đối với php-mysql như bên dưới;
Vấn đề Triệu chứng
Tôi đang cố cài đặt MySQL trên máy chủ CentOS mới bằng lệnh sau
wget //dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
sudo yum localinstall mysql57-community-release-el7-8.noarch.rpm
sudo yum install mysql-community-server
Thông báo lỗi chi tiết như bên dưới
All matches were filtered out by modular filtering for argument: mysql-community-server
Error: Unable to find a match: mysql-community-server
hoặc
No match for argument: mysql-community-server
Error: Unable to find a match: mysql-community-server
Tôi đã cập nhật yum và chạy lại lệnh trên nhưng nhận được kết quả tương tự
Thực hiện theo các bước giải pháp bên dưới để giải quyết lỗi “Không thể tìm thấy kết quả phù hợp” khi cài đặt MySQL trên CentOS
Dung dịch
Thực hiện lệnh sau
yum module disable mysql
yum install mysql-community-server
Trong trường hợp bạn gặp lỗi kiểm tra giao dịch như bên dưới
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'yum clean packages'.
Error: Transaction test error:
file /etc/my.cnf from install of mysql-community-server-5.7.35-1.el7.x86_64 conflicts with file from package mariadb-connector-c-config-3.1.11-2.el8_3.noarch
Bạn có thể giải quyết lỗi kiểm tra giao dịch bằng lệnh bên dưới để cài đặt MySQL
yum install mysql
Tôi đang cố gắng sử dụng kết nối PHP để kết nối Cơ sở dữ liệu MySQL trên phpmyadmin. Không có gì lạ mắt về kết nối chỉ cố gắng xem liệu kết nối có thành công hay không. Tôi đang sử dụng MAMP để lưu trữ cơ sở dữ liệu, kết nối mà tôi đang cố sử dụng là kết nối này
setAttribute[PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION];
echo "Connected successfully";
}
catch[PDOException $e]
{
echo "Connection failed: " . $e->getMessage[];
}
?>
Tôi đã sử dụng postman để kiểm tra xem kết nối có hoạt động không, nhưng tôi vẫn nhận được thông báo lỗi này
Kết nối thất bại. SQLSTATE[HY000] [2002] Kết nối bị từ chối
Trước khi tôi nhận được thông báo lỗi của
Kết nối thất bại. SQLSTATE[HY000] [2002] Không có tệp hoặc thư mục như vậy
Điều này là do tôi đã đặt tên máy chủ thành localhost, thông qua việc thay đổi tên này thành địa chỉ IP, nó đã khiến tôi bị từ chối kết nối và tôi không biết có vấn đề gì
Khi PHP nói về "_______8 bất ngờ", điều đó có nghĩa là mã của bạn đã kết thúc trong khi trình phân tích cú pháp đang mong đợi nhiều mã hơn. [Thông điệp hơi sai lệch khi hiểu theo nghĩa đen. Nó không phải là về một biến có tên là "$end", như đôi khi được những người mới đến giả định. Nó đề cập đến "phần cuối của tệp", EOF. ]
Nguyên nhân. Không cân bằng
{
và0 cho các khối mã/và khai báo hàm hoặc lớpAll matches were filtered out by modular filtering for argument: mysql-community-server Error: Unable to find a match: mysql-community-server
Hầu như luôn luôn có một dấu ngoặc nhọn
All matches were filtered out by modular filtering for argument: mysql-community-server
Error: Unable to find a match: mysql-community-server
0 bị thiếu để đóng các khối mã trước đó. Điều nó nói là trình phân tích cú pháp đang mong đợi tìm thấy một kết thúc của All matches were filtered out by modular filtering for argument: mysql-community-server
Error: Unable to find a match: mysql-community-server
0 nhưng thực sự đã đến cuối tệpMột lần nữa, sử dụng thụt đầu dòng thích hợp để tránh những vấn đề như vậy
Sử dụng một IDE có đối sánh dấu ngoặc để tìm ra vị trí của
0. Có phím tắt trong hầu hết các IDE và trình soạn thảo văn bảnAll matches were filtered out by modular filtering for argument: mysql-community-server Error: Unable to find a match: mysql-community-server
- NetBeans, PhpStorm, Komodo. Ctrl[ và Ctrl]
- Nhật thực, Aptana. CtrlShiftP
- nguyên tử, siêu phàm. Ctrlm - Zend Studio CtrlM
- Geany, Sổ tay ++. CtrlB - Joe. CtrlG - Emacs. C-M-n - Vim. %
Hầu hết các IDE cũng làm nổi bật dấu ngoặc nhọn, dấu ngoặc đơn và dấu ngoặc đơn phù hợp. Điều này làm cho việc kiểm tra mối tương quan của chúng khá dễ dàng
Biểu thức chưa kết thúc
Lỗi cú pháp/trình phân tích cú pháp
All matches were filtered out by modular filtering for argument: mysql-community-server
Error: Unable to find a match: mysql-community-server
4 cũng có thể xảy ra đối với các biểu thức hoặc câu lệnh chưa kết thúcVì vậy, trước tiên hãy xem phần cuối của tập lệnh. Dấu
All matches were filtered out by modular filtering for argument: mysql-community-server
Error: Unable to find a match: mysql-community-server
5 thường dư thừa cho câu lệnh cuối cùng trong bất kỳ tập lệnh PHP nào. Nhưng bạn nên có một. Chính vì nó thu hẹp các vấn đề về cú pháp như vậy. Đặc biệt là sau khi bạn thấy mình thêm nhiều câu lệnh vào cuối tập lệnhDấu HEREDOC thụt vào
Một sự cố phổ biến khác xuất hiện với các chuỗi. Điểm đánh dấu kết thúc bị bỏ qua với khoảng trắng, tab, v.v.
print