Redis từ cài đặt đến vận hành: Hướng dẫn đầy đủ và cách xử lý lỗi “Failed listening on port 6379 (tcp)”

Trong các hệ thống backend hiện đại, Redis thường được sử dụng như một bộ nhớ đệm tốc độ cao, message broker hoặc database dạng key–value phục vụ cho các ứng dụng web quy mô lớn. Nhờ tốc độ truy xuất cực nhanh và khả năng lưu trữ dữ liệu trong bộ nhớ, Redis đã trở thành một thành phần gần như tiêu chuẩn trong nhiều kiến trúc hệ thống hiện đại.

Tuy nhiên, đối với người mới bắt đầu, quá trình cài đặt và khởi động Redis đôi khi có thể gặp một số lỗi phổ biến, đặc biệt là lỗi “Failed listening on port 6379 (tcp), aborting” khi Redis không thể mở cổng mặc định của nó. Bài viết này trình bày toàn bộ quá trình từ cài đặt Redis, khởi động dịch vụ, kiểm tra hoạt động, cho đến cách xử lý lỗi cổng 6379 một cách chi tiết.

Redis là gì và vì sao Redis được sử dụng rộng rãi

Redis là một hệ quản trị dữ liệu dạng in-memory data store, nghĩa là dữ liệu được lưu trực tiếp trong RAM thay vì ổ cứng. Điều này giúp Redis có tốc độ truy xuất cực kỳ nhanh, thường chỉ mất vài micro-giây cho mỗi thao tác.

Redis hỗ trợ nhiều cấu trúc dữ liệu khác nhau như:

  • String
  • List
  • Set
  • Sorted Set
  • Hash
  • Stream

Nhờ vậy, Redis có thể được dùng cho nhiều mục đích khác nhau như:

  • Cache dữ liệu cho ứng dụng web
  • Lưu session người dùng
  • Queue xử lý tác vụ nền
  • Real-time analytics
  • Pub/Sub messaging

Cổng mặc định mà Redis sử dụng là 6379, và hầu hết các ứng dụng kết nối đến Redis đều thông qua cổng này.

Phần 1: Cài đặt Redis trên hệ điều hành Linux (Ubuntu)

Phần lớn hệ thống server hiện nay chạy Linux, đặc biệt là Ubuntu hoặc Debian. Việc cài đặt Redis trên các hệ điều hành này khá đơn giản.

Bước 1: Cập nhật hệ thống

Trước khi cài đặt, nên cập nhật danh sách package của hệ thống:

sudo apt update
sudo apt upgrade

Việc cập nhật giúp tránh xung đột thư viện hoặc cài nhầm phiên bản cũ.

Bước 2: Cài đặt Redis

Sau khi cập nhật xong, cài Redis bằng lệnh:

sudo apt install redis-server

Sau khi cài đặt hoàn tất, Redis sẽ được cài dưới dạng một system service.

Bước 3: Kiểm tra trạng thái Redis

Kiểm tra xem Redis đã chạy hay chưa:

sudo systemctl status redis

Nếu Redis đang hoạt động, bạn sẽ thấy trạng thái:

active (running)

Phần 2: Khởi động và quản lý Redis

Sau khi cài đặt, Redis có thể được quản lý bằng hệ thống service của Linux.

Khởi động Redis

sudo systemctl start redis

Dừng Redis

sudo systemctl stop redis

Khởi động lại Redis

sudo systemctl restart redis

Cho phép Redis tự khởi động cùng hệ thống

sudo systemctl enable redis

Điều này giúp Redis tự động chạy khi server reboot.

Phần 3: Kiểm tra Redis hoạt động

Redis cung cấp công cụ dòng lệnh để kiểm tra kết nối.

Chạy lệnh:

redis-cli

Sau đó thử lệnh:

ping

Nếu Redis hoạt động bình thường, hệ thống sẽ trả về:

PONG

Điều này có nghĩa Redis server đang hoạt động và chấp nhận kết nối.

Phần 4: Lỗi phổ biến khi khởi động Redis

Một trong những lỗi phổ biến nhất khi khởi động Redis là:

Failed listening on port 6379 (tcp), aborting

Lỗi này xảy ra khi Redis không thể bind vào cổng 6379.

Nguyên nhân thường gặp gồm:

  • Cổng 6379 đã bị chương trình khác chiếm
  • Redis đã chạy một instance khác
  • cấu hình Redis sai
  • container hoặc service khác đang sử dụng cổng này

Phần 5: Kiểm tra cổng 6379 có đang bị chiếm hay không

Đầu tiên cần xác định tiến trình nào đang dùng cổng này.

Chạy lệnh:

sudo lsof -i :6379

hoặc

netstat -tulpn | grep 6379

Nếu có tiến trình sử dụng cổng, hệ thống sẽ hiển thị PID của tiến trình đó.

Ví dụ:

redis-server  1234  root  TCP *:6379 (LISTEN)

Phần 6: Dừng tiến trình đang chiếm cổng

Nếu Redis đang chạy sẵn một instance khác, bạn chỉ cần dừng nó:

sudo systemctl stop redis

Hoặc nếu là tiến trình khác:

sudo kill -9 PID

Sau đó khởi động lại Redis:

sudo systemctl start redis

Phần 7: Đổi cổng Redis nếu cần thiết

Trong một số hệ thống, cổng 6379 có thể được sử dụng cho mục đích khác. Khi đó bạn có thể thay đổi cổng Redis.

Mở file cấu hình:

/etc/redis/redis.conf

Tìm dòng:

port 6379

Đổi thành ví dụ:

port 6380

Sau đó restart Redis:

sudo systemctl restart redis

Phần 8: Kiểm tra cấu hình bind

Redis đôi khi không khởi động được nếu cấu hình bind sai địa chỉ IP.

Trong file cấu hình:

redis.conf

Tìm dòng:

bind 127.0.0.1

Cấu hình này cho phép Redis chỉ lắng nghe trên localhost.

Nếu server cần kết nối từ bên ngoài, có thể cấu hình:

bind 0.0.0.0

Tuy nhiên cần cẩn trọng vì điều này có thể mở Redis ra internet.

Phần 9: Kiểm tra Redis sau khi sửa lỗi

Sau khi xử lý xong, kiểm tra lại:

redis-cli ping

Nếu trả về:

PONG

thì Redis đã hoạt động bình thường.

Redis là một trong những công cụ quan trọng

Redis là một trong những công cụ quan trọng trong hệ sinh thái backend hiện đại. Việc cài đặt và vận hành Redis tương đối đơn giản, nhưng các lỗi liên quan đến cổng mạng, đặc biệt là lỗi “Failed listening on port 6379 (tcp)”, vẫn thường xảy ra khi hệ thống đã có tiến trình khác chiếm cổng hoặc cấu hình chưa chính xác.

Hiểu rõ cách kiểm tra cổng, quản lý service và chỉnh sửa file cấu hình sẽ giúp bạn xử lý những sự cố này nhanh chóng và duy trì hệ thống Redis ổn định.

Trong các hệ thống quy mô lớn, Redis thường được triển khai cùng với cơ chế replication, cluster hoặc sentinel để tăng tính sẵn sàng và khả năng mở rộng, biến nó trở thành một trong những thành phần cốt lõi của kiến trúc hạ tầng hiện đại.