مرجع کامل دستورات redis-cli برای حرفهایها!

در Redis CLI (رابط خط فرمان Redis) دستورات متعددی برای مدیریت دادهها، پیکربندی، مانیتورینگ و اشکالزدایی وجود دارد.
redis-cli چیست و چه کاربردی دارد ؟
redis-cli یک ابزار خط فرمان برای تعامل با Redis است. این ابزار به ما این امکان را میدهد دستورات را به Redis ارسال کنیم، اطلاعات را بخوانیم، تغییرات مورد نظر خود را انجام دهیم یا اطلاعات را حذف کنیم.
کاربردهای اصلی redis-cli شامل آزمایش دستورات، مدیریت دیتابیس Redis و دیباگ کردن است . برای این مورد دستور redis-cli در ترمینال سی پنل انجام میشود.
در ادامه لیستی از مهمترین دستورات Redis CLI را به همراه توضیح آورده شده است:
1. مدیریت کلیدها
در Redis، مدیریت کلیدها با دستورات مختلفی با استفاده از دستور redis-cli انجام میشود. در جدول زیر به این دستورات اشاره شده است.
توضیح | دستور |
---|---|
KEYS pattern | لیست کلیدهایی که با الگوی مشخص شده مطابقت دارند |
EXISTS key | بررسی میکند که آیا کلید وجود دارد یا خیر (برمیگرداند: ۰ یا ۱) |
DEL key | حذف یک کلید |
EXPIRE key seconds | تنظیم زمان انقضا برای یک کلید (بر حسب ثانیه) |
TTL key | دریافت زمان باقیمانده تا انقضای یک کلید |
PERSIST key | حذف زمان انقضای یک کلید و دائمی کردن آن |
TYPE key | دریافت نوع مقدار ذخیرهشده در یک کلید |
RANDOMKEY | دریافت یک کلید تصادفی از دیتابیس |
2. عملیات روی رشتهها (Strings)
در Redis، رشتهها (strings) یکی از پرکاربردترین انواع داده هستند.
میتوان با SET مقدار یک کلید را تعیین و با GET آن را فراخوانی و استفاده کرد.
همچنین، با APPEND به مقدار یک رشته اضافه، با INCR و DECR مقدار عددی را افزایش یا کاهش و با GETRANGE بخشی از رشته را استخراج کرد.
توضیح | دستور |
---|---|
SET key value | تنظیم مقدار یک کلید |
GET key | دریافت مقدار یک کلید |
APPEND key value | افزودن مقدار جدید به انتهای مقدار موجود |
STRLEN key | دریافت طول مقدار یک رشته |
INCR key | افزایش مقدار عددی یک کلید |
DECR key | کاهش مقدار عددی یک کلید |
INCRBY key increment | افزایش مقدار عددی کلید با مقدار مشخص |
DECRBY key decrement | کاهش مقدار عددی کلید با مقدار مشخص |
3. عملیات روی لیستها (Lists)
در Redis، لیستها (Lists) مجموعهای مرتب از رشتهها هستند که مانند صف (Queue) یا پشته (Stack) عمل میکنند. میتوان با LPUSH و RPUSH عناصر را به ابتدا یا انتهای لیست اضافه و با LPOP و RPOP آنها را حذف کرد. همچنین، با LRANGE بازهای از لیست را دریافت و با LLEN طول لیست را بررسی کرد.
توضیح | دستور |
---|---|
LPUSH key value | افزودن مقدار جدید به ابتدای لیست |
RPUSH key value | افزودن مقدار جدید به انتهای لیست |
LPOP key | حذف و دریافت مقدار از ابتدای لیست |
RPOP key | حذف و دریافت مقدار از انتهای لیست |
LRANGE key start stop | دریافت مقادیر موجود در یک بازه از لیست |
LLEN key | دریافت تعداد عناصر موجود در لیست |
4. عملیات روی مجموعهها (sets)
مجموعهها (sets) ساختارهای داده بدون ترتیب و یکتا هستند.
میتوان با SADD اعضای جدید اضافه، با SREM حذف، و با SMEMBERS همه اعضای مجموعه را دریافت کرد. همچنین، عملیات مجموعهای مانند اشتراک (SINTER)، اجتماع (SUNION) و تفاضل (SDIFF) روی چند مجموعه قابل انجام است.
توضیح | دستور |
---|---|
SADD key value | افزودن مقدار جدید به مجموعه |
SREM key value | حذف مقدار از مجموعه |
SMEMBERS key | دریافت تمام مقادیر یک مجموعه |
SISMEMBER key value | بررسی عضویت یک مقدار در مجموعه (برمیگرداند: ۰ یا ۱) |
SCARD key | دریافت تعداد اعضای یک مجموعه |
SRANDMEMBER key [count] | دریافت یک یا چند مقدار تصادفی از مجموعه |
5. عملیات روی هشها (Hashes)
هشها (Hashes) برای ذخیره مجموعهای از فیلد-مقدارها (مشابه JSON یا دیکشنری) استفاده میشوند.
این امکان وجود دارد که با HSET مقدار یک فیلد را تنظیم، با HGET مقدار آن را دریافت، و با HDEL فیلد را حذف کرد.
همینطور HGETALL برای دریافت تمام دادههای هش و HLEN برای شمارش فیلدها کاربرد دارد.
توضیح | دستور |
---|---|
HSET key field value | تنظیم مقدار یک فیلد در هش |
HGET key field | دریافت مقدار یک فیلد از هش |
HDEL key field | حذف یک فیلد از هش |
HGETALL key | دریافت تمام فیلدها و مقادیر هش |
HLEN key | دریافت تعداد فیلدهای هش |
6. عملیات روی مجموعههای مرتب (Sorted Sets – Zsets)
مجموعههای مرتب (Sorted Sets – Zsets) مجموعههایی از اعضا هستند که به همراه یک امتیاز (score) مرتب میشوند.
در مجموعه های مرتب می شود با ZADD اعضا را به مجموعه اضافه و امتیاز آنها را تنظیم کرد و یا با ZRANGE یا ZREVRANGE اعضای مجموعه را به ترتیب امتیاز از کم به زیاد یا برعکس دریافت کرد.
با دستور ZREM میتوان اعضا را حذف و با ZCARD تعداد اعضای مجموعه را مشاهده کرد.
توضیح | دستور |
---|---|
ZADD key score member | افزودن مقدار به مجموعه مرتب |
ZREM key member | حذف مقدار از مجموعه مرتب |
ZRANK key member | دریافت رتبه (ایندکس) یک مقدار |
ZREVRANK key member | دریافت رتبه (ایندکس) بر اساس ترتیب معکوس |
ZSCORE key member | دریافت امتیاز یک مقدار |
7. اطلاعات و مدیریت سرور
برای مدیریت اطلاعات و وضعیت سرور ردیس، میتوان از دستورات مختلفی استفاده کرد.
با INFO میتوان اطلاعات دقیق در مورد وضعیت سرور، مصرف حافظه و آمار مختلف را نمایش داد.
همینطور، دستور MONITOR برای نظارت بر تمامی درخواستهای ورودی به سرور و دستور SHUTDOWN برای خاموش کردن آن به کار میرود.
توضیح | دستور |
---|---|
INFO | نمایش اطلاعات عمومی سرور |
CONFIG GET parameter | دریافت مقدار یک تنظیم مشخص |
CONFIG SET parameter value | تنظیم مقدار یک پارامتر پیکربندی |
FLUSHDB | حذف تمام دادههای دیتابیس فعلی |
FLUSHALL | حذف تمام دادههای تمام دیتابیسها |
DBSIZE | دریافت تعداد کلیدهای دیتابیس فعلی |
8. سایر دستورات کاربردی ردیس در ترمینال
در جدول زیر، سایر دستوراتی که در محیط ترمینال و با دستور redis-cli می توان استفاده کرد آورده شده است.
توضیح | دستور |
---|---|
PING | بررسی وضعیت اتصال به سرور (برمیگرداند: PONG) |
AUTH password | احراز هویت در Redis |
SELECT database_number | تغییر دیتابیس فعال |
EVAL script numkeys key [arg] | اجرای یک اسکریپت Lua |
MONITOR | مشاهده تمام دستورات اجراشده در لحظه |
SAVE | ذخیره اطلاعات روی دیسک بهصورت همزمان |
BGSAVE | ذخیره اطلاعات روی دیسک بهصورت غیرهمزمان |
مثالهایی از استفاده در redis-cli
بررسی وضعیت Redis
redis-cli PING
ایجاد یک مقدار جدید
redis-cli SET user:1 "Ali"
دریافت مقدار
redis-cli GET user:1
افزایش مقدار عددی
redis-cli INCR counter
افزودن مقدار به یک لیست
redis-cli LPUSH mylist "item1"
دریافت تمامی مقادیر یک لیست
redis-cli LRANGE mylist 0 -1
سخن پایانی
مرجع رسمی برای مشاهده مستندات دستور redis-cli و سایر دستورات Redis، وبسایت رسمی Redis است. برای مشاهده مستندات دستورات ردیس ، میتوانید به لینک زیر مراجعه کنید:
https://redis.io/docs/latest/commands/
در این صفحه، تمامی دستورات Redis به همراه توضیحات و مثالها برای استفاده در redis-cli آورده شده است.