Redis: بدء استخدام Redis السريع

بعد تثبيت Redis، دعنا نبدأ بسرعة ونتعلم عمليات Redis الأساسية.

1. بدء خادم Redis

(1) بدء التشغيل في المقدمة

أبسط طريقة لبدء Redis — يعمل في المقدمة ويسجل مباشرة في الطرفية.

BASH
redis-server

المخرجات:

TEXT 📖 للعرض فقط
[Redis server starting...]

Redis 7.0.11 (00000000/0) 64 bit
Running in standalone mode
Port: 6379
PID: 12345
Ready to accept connections
💡 نصيحة: اضغط Ctrl+C لإيقاف خادم Redis.

(2) بدء التشغيل في الخلفية

يُوصى بالتشغيل في الخلفية للبيئات الإنتاجية.

BASH
# الطريقة 1: استخدام معامل daemonize
redis-server --daemonize yes

# الطريقة 2: تعديل ملف الإعدادات
# عدّل /etc/redis/redis.conf
daemonize yes
# ثم ابدأ
redis-server /etc/redis/redis.conf

(3) بدء التشغيل على منفذ محدد

BASH
# استخدام المنفذ 6380
redis-server --port 6380

(4) التحقق مما إذا كان Redis قيد التشغيل

BASH
# Linux
ps aux | grep redis-server

# أو استخدام redis-cli
redis-cli ping
# يُرجع PONG إذا كان Redis قيد التشغيل

2. الاتصال بـ Redis

(1) استخدام redis-cli

redis-cli هو عميل سطر الأوامر المدمج في Redis.

BASH
# الاتصال بـ Redis المحلي (الافتراضي 127.0.0.1:6379)
redis-cli

# بعد الاتصال، يتغير الموجه إلى:
127.0.0.1:6379>

(2) تحديد المضيف والمنفذ

BASH
# الاتصال بمضيف ومنفذ محددين
redis-cli -h 192.168.1.100 -p 6379

# الاتصال بمنفذ محلي مختلف
redis-cli -p 6380

(3) الاتصال بكلمة مرور

BASH
# الطريقة 1: معامل سطر الأوامر
redis-cli -a yourpassword

# الطريقة 2: المصادقة بعد الاتصال
redis-cli
 AUTH yourpassword
OK
⚠️ تحذير أمني: استخدام المعامل -a يعرض كلمة المرور في سجل الأوامر. للإنتاج، استخدم أمر AUTH أو ملف الإعدادات بدلاً من ذلك.

(4) الاتصال عبر مقبس Unix

BASH
redis-cli -s /tmp/redis.sock

(5) الخروج من redis-cli

BASH
# الخروج من الاتصال
 exit
# أو
 quit
# أو اضغط Ctrl+D

3. الأمر الأول: PING

يختبر أمر PING ما إذا كان الاتصال يعمل، مشابهًا لأمر ping الشبكي.

▶ مثال:اختبار الاتصال

BASH
PING

إذا كان Redis يعمل بشكل صحيح، فإنه يُرجع PONG.

(1) PING مع رسالة

BASH
 PING "Hello"
"Hello"

يمكن لـ PING حمل رسالة، ويعيدها Redis كما هي.

💡 حالة الاستخدام: يُستخدم PING عادةً لفحوصات الصحة واختبار الاتصال وقياس زمن انتقال الشبكة.


4. الأوامر الأساسية: SET و GET

SET و GET هما أكثر الأوامر استخدامًا لتخزين واسترداد بيانات السلاسل.

(1) SET: تخزين البيانات

يقوم أمر SET بتعيين زوج مفتاح-قيمة.

▶ مثال:SET أساسي

BASH
SET name "Redis Tutorial"
GET name

▶ مثال:مع انتهاء الصلاحية

BASH
# تعيين مفتاح ينتهي صلاحيته بعد 10 ثوانٍ
SET temp "temporary" EX 10
GET temp

# أو استخدام PX للميلي ثانية
SET temp2 "temp" PX 5000
GET temp2

▶ مثال:التعيين فقط إذا كان المفتاح غير موجود

BASH
# NX: التعيين فقط إذا كان المفتاح غير موجود
SET name "New Name" NX

# XX: التعيين فقط إذا كان المفتاح موجودًا
SET name "Updated Name" XX
GET name

(2) بناء جملة أمر SET الكامل

BASH
SET key value [NX|XX] [GET] [EX seconds|PX milliseconds|EXAT timestamp|PXAT timestamp]
المعامل الوصف
NX التعيين فقط إذا كان المفتاح غير موجود
XX التعيين فقط إذا كان المفتاح موجودًا
GET إرجاع القيمة القديمة (Redis 6.2+)
EX seconds تعيين انتهاء الصلاحية بالثواني
PX milliseconds تعيين انتهاء الصلاحية بالميلي ثانية
EXAT timestamp تعيين انتهاء الصلاحية بطابع زمني Unix (ثوانٍ)
PXAT timestamp تعيين انتهاء الصلاحية بطابع زمني Unix (ميلي ثانية)

(3) GET: قراءة البيانات

يسترجع أمر GET قيمة المفتاح.

▶ مثال:GET أساسي

BASH
GET name

# المفتاح غير موجود، يُرجع nil
GET notexist

▶ مثال:GETSET (الحصول على القيمة القديمة، تعيين قيمة جديدة)

BASH
GETSET name "New Value"
GET name

5. أوامر أساسية أخرى

(1) DEL: حذف مفتاح

BASH
 SET temp "delete me"
OK

 DEL temp
(integer) 1  # الحذف ناجح، يُرجع عدد المفاتيح المحذوفة

 DEL temp
(integer) 0  # المفتاح غير موجود، تم حذف 0

(2) EXISTS: التحقق من وجود المفتاح

BASH
 SET name "Redis"
OK

 EXISTS name
(integer) 1  # موجود

 EXISTS notexist
(integer) 0  # غير موجود

(3) KEYS: البحث عن المفاتيح

BASH
# تعيين بعض بيانات الاختبار
 SET user:1 "Alice"
 SET user:2 "Bob"
 SET product:1 "iPhone"

# البحث عن جميع المفاتيح (استخدم بحذر!)
 KEYS *
1) "user:1"
2) "user:2"
3) "product:1"
4) "name"

# البحث عن المفاتيح المطابقة لنمط
 KEYS user:*
1) "user:1"
2) "user:2"

 KEYS *:1
1) "user:1"
2) "product:1"
⚠️ تحذير: أمر KEYS يمسح قاعدة البيانات بأكملها. إنه بطيء جدًا مع مجموعات البيانات الكبيرة ويجب تجنبه في الإنتاج! استخدم SCAN بدلاً من ذلك.

(4) FLUSHDB: مسح قاعدة البيانات الحالية

BASH
# مسح جميع البيانات في قاعدة البيانات الحالية (خطير!)
 FLUSHDB
OK
⚠️ خطر: FLUSHDB تحذف جميع البيانات. استخدم بحذر شديد في الإنتاج!

(5) DBSIZE: عد المفاتيح

BASH
 DBSIZE
(integer) 4  # قاعدة البيانات الحالية بها 4 مفاتيح

6. أنواع إرجاع الأوامر

تُرجع أوامر Redis أنواعًا مختلفة من النتائج:

مثال الإرجاع النوع الوصف
OK سلسلة بسيطة العملية ناجحة
"value" سلسلة قيمة سلسلة
(integer) 1 عدد صحيح نتيجة رقمية
1) "a"``<br>``2) "b" مصفوفة قائمة أو مجموعة
(nil) فارغ المفتاح غير موجود أو لا توجد نتيجة
# Error خطأ فشل تنفيذ الأمر

7. تنفيذ الأوامر بشكل دفعات

(1) الوضع التفاعلي

أدخل الأوامر واحدًا تلو الآخر في redis-cli:

BASH
 SET a 1
OK
 SET b 2
OK
 GET a
"1"

(2) وضع خط الأنابيب

تنفيذ الأوامر من ملف بشكل دفعات:

BASH
# إنشاء ملف أوامر commands.txt
echo "SET key1 value1" > commands.txt
echo "SET key2 value2" >> commands.txt
echo "GET key1" >> commands.txt

# تنفيذ دفعات
cat commands.txt | redis-cli

المخرجات:

BASH
OK
OK
"value1"

(3) التنفيذ المباشر من سطر الأوامر

BASH
# تنفيذ أمر واحد مباشرة
redis-cli SET mykey "myvalue"
# المخرجات: OK

redis-cli GET mykey
# المخرجات: "myvalue"

# تنفيذ أوامر متعددة
redis-cli << EOF
SET a 1
SET b 2
GET a
GET b
EOF

8. استخدام نظام المساعدة

لدى Redis نظام مساعدة شامل مدمج.

(1) عرض مساعدة الأمر

BASH
 HELP SET

  SET key value [NX|XX] [GET] [EX seconds|PX milliseconds|EXAT unix-time-seconds|PXAT unix-time-milliseconds|KEEPTTL]
  summary: Set the string value of a key
  since: 1.0.0
  group: string

(2) عرض مجموعات الأوامر

BASH
 HELP @string
# يسرد جميع أوامر السلسلة

(3) الإكمال التلقائي

يدعم redis-cli مفتاح Tab لإكمال الأوامر:

BASH
 SET<press Tab>
# يكتمل تلقائيًا إلى SET

9. نصائح مفيدة

(1) عرض معلومات الخادم

BASH
 INFO
# يُرجع معلومات خادم شاملة

# عرض أقسام محددة
 INFO server
 INFO memory
 INFO stats

(2) عرض الإعدادات

BASH
# عرض جميع الإعدادات
 CONFIG GET *

# عرض إعداد محدد
 CONFIG GET maxmemory
1) "maxmemory"
2) "0"

(3) مراقبة الأوامر

BASH
# مراقبة فورية لجميع الأوامر المنفذة
 MONITOR
OK
# ثم يعرض جميع الأوامر من جميع العملاء
💡 حالة الاستخدام: MONITOR مفيد لتصحيح الأخطاء — يمكنك رؤية جميع أوامر العملاء. استخدم بحذر في الإنتاج (تأثير على الأداء).

(4) عرض اتصالات العملاء

BASH
 CLIENT LIST
id=1 addr=127.0.0.1:52345 fd=8 name= age=10 idle=0 ...

❓ أسئلة شائعة

س لا يمكن الاتصال باستخدام redis-cli؟
ج تحقق مما إذا كان Redis قيد التشغيل (ps aux | grep redis)، وتحقق من صحة المنفذ، وتحقق من إعدادات جدار الحماية。
س لماذا يُرجع (nil)؟
ج (nil) تعني فارغ — عادةً لأن المفتاح غير موجود. استخدم EXISTS للتحقق。
س كيف أقوم بمسح بيانات الاختبار؟
ج استخدم FLUSHDB لمسح قاعدة البيانات الحالية، أو FLUSHALL لمسح جميع قواعد البيانات (خطير!).
س كيف أخرج من redis-cli؟
ج اكتب exit أو quit، أو اضغط Ctrl+D。

📖 ملخص

📝 تمارين

  1. تمرين البدء: ابدأ خادم Redis، وتصل باستخدام redis-cli، وشغّل أمر PING
  2. العمليات الأساسية: استخدم SET لتخزين اسمك وعمرك، ثم استخدم GET لاسترجاعهما
  3. تمرين انتهاء الصلاحية: عيّن مفتاحًا مع انتهاء صلاحية، انتظر حتى تنتهي صلاحيته، ثم استخدم GET للتحقق
  4. العمليات الدفعية: أنشئ ملفًا نصيًا بأوامر Redis متعددة ونفذها باستخدام وضع خط الأنابيب

10. الدرس التالي

في الدرس التالي، سنتعلم إعدادات Redis، والتي تغطي ملف إعدادات Redis وخيارات الإعدادات الشائعة.

Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%