Thông thường, các nhà phát triển quên đặt thời hạn sử dụng cho các khóa và quá trình làm lại bắt đầu hết bộ nhớ. Mặc dù bạn có thể đặt thời hạn cho các khóa mới được tạo, nhưng bạn vẫn cần một cách để đặt thời hạn cho các khóa đã có trong bộ nhớ.
Lệnh này sẽ đặt thời hạn sử dụng cho các khóa phù hợp với người dùng:*
Tập lệnh hoạt động như thế nào?
- Đầu tiên, chúng tôi sử dụng
redis-cli --scan --pattern <pattern>
để nhận danh sách các khóa, một khóa trên mỗi dòng. - Sau đó, chúng tôi chạy một tập lệnh awk cho mỗi khóa. Tập lệnh awk này hơi phức tạp, vì vậy chúng tôi sẽ chia nhỏ nó ra
- Tập lệnh awk có mẫu lệnh
expire __key__ 1000
. Đây là lệnh sẽ chạy cho tất cả các phím. - Đối với mỗi khóa phù hợp, lệnh awk thay thế
__key__
với khóa thực tế - Tiếp theo, chúng tôi chuyển đổi lệnh chuỗi sang định dạng giao thức redis. Đây là định dạng thô mà redis hiểu được.
- Cuối cùng, chúng tôi chuyển các lệnh thô sang redis-cli bằng cách sử dụng cờ –pipe. Đây là cách hiệu quả nhất để gửi các lệnh hàng loạt tới redis.
Tùy chỉnh tập lệnh này
- Bạn có thể tùy chỉnh
cmd_template
để chạy bất kỳ lệnh làm lại phím đơn nào đối với nhiều phím phù hợp với một mẫu. - Quét redis chỉ cho phép các mẫu kiểu toàn cầu, không hỗ trợ regex. Vì vậy, người dùng
users:*
sẽ khớp vớiusers:123
cũng như người dùngusers:123:favourites
. Bạn có thể đặtgrep
trong đường dẫn sau redis-cli đầu tiên và trước tập lệnh awk. - Nếu máy chủ redis của bạn không có trên máy chủ cục bộ, bạn sẽ phải cung cấp máy chủ, cổng và mật khẩu hai lần trong lệnh, về cơ bản bất cứ khi nào bạn gọi redis-cli.
Xem thêm
- Đổi tên các trường trong một băm
- Đổi tên nhiều phím bằng tính năng quét
- Xóa các phím phù hợp với một mẫu
- RDBTools GUI cho Redis cho phép bạn xem trước các hành động hàng loạt của mình và cung cấp GUI mạnh mẽ để quản lý dữ liệu trong Redis. Đây là bản tải xuống miễn phí!