Redis দিয়ে অধ্যবসায় অক্ষম কিভাবে?


91

আমি ভাবছিলাম কীভাবে রেডিসে প্রেসিডেন্টটি অক্ষম করবেন। : এখানে এই কাজ করার সম্ভাবনার উল্লেখ নেই http://redis.io/topics/persistence । আমি এখানে বর্ণিত ঠিক একই অর্থে এটি বোঝাতে চাই। যে কোন সাহায্য অনেক বেশি প্রশংসিত হবে!


আমি আশ্চর্যজনক হলেও এটি পেয়েছি যে বিরক্তিকর না হলেও, এটি সম্পর্কে অফিসিয়াল ওয়েবসাইটে কোনও নির্দেশনা নেই বা এই সম্পর্কে ইন্টারনেটে প্রচুর তথ্য নেই (দেখুন যে স্ট্যাকওভারফ্লো / সেকশনস / ১৯৫৮1059/… আরও বেশি ভোট পেয়েছে এবং এর চেয়ে আরও ভাল নথিভুক্ত রয়েছে) এই). সামগ্রিকভাবে বিবেচনা করে যে রেডিস প্রায়শই অ-অবিচল ডেটাবেস হিসাবে ব্যবহৃত হয়।
অ্যাক্রোনিক্স

উত্তর:


111

রেডিসে সমস্ত ডেটা অধ্যবসায় অক্ষম করতে redis.confফাইলটিতে নিম্নলিখিতটি করুন:

  1. এটিকে appendonlyকনফিগারেশনের নির্দেশটি সেট করে অক্ষম করুন no(এটি ডিফল্ট মান। এটার মত:

    appendonly no
    
  2. সমস্ত saveকনফিগারেশন নির্দেশের মন্তব্য করে আরডিবি স্ন্যাপশ্যাটিং অক্ষম করুন (সেখানে 3 টি রয়েছে যা ডিফল্টরূপে সংজ্ঞায়িত করা হয়)

    #save 900 1
    #save 300 10
    #save 60 10000
    

পরিবর্তনের পরে, এগুলি প্রয়োগ করতে আপনি পুনরায় চালু করার বিষয়টি নিশ্চিত করুন।

বিকল্পভাবে, আপনি CONFIG SETরানটাইম চলাকালীন এই পরিবর্তনগুলি প্রয়োগ করতে কমান্ডটি ব্যবহার করতে পারেন (পরিবর্তনগুলি চালিয়ে যাওয়ার জন্য আপনি এটিও করেছেন তা নিশ্চিত করুন CONFIG REWRITE)।

দ্রষ্টব্য: আপনার রেডিসের সংস্করণ অনুসারে, এমন আরও কিছু টুইট রয়েছে যা রেডিসকে অনুলিপি-সম্পর্কিত কাজের জন্য ডিস্ক অ্যাক্সেস করা থেকে বিরত করে।


4
redis> কনফিগার সেট করুন অটো-অফ-পুনর্লিখন-শতাংশ 0
টুনটং

4
আমি আমার রেডিসকে তিনটি saveনির্দেশাবলীর মন্তব্য করে ডিস্কে ডেটা সংরক্ষণ না করার জন্য কনফিগার করেছি । আমি দেখতে পাচ্ছি এটি পর্যায়ক্রমে ডেটা স্ন্যাপশট করে না। যাইহোক, আমি যখনই আমার সার্ভারটি শাটডাউন করি তখনও আমি ডিস্কে একটি .rdb ফাইল লিখিত দেখতে পাচ্ছি। এটি যে কোনও উপায়ে তৈরি করা যেতে পারে, ব্যর্থতা প্রক্রিয়াটির কারণে সম্ভবত?
Jolta

4
প্রকৃতপক্ষে এটি কার্যকর করার জন্য, আপনি এখানে তালিকাবদ্ধ কমান্ডগুলি ক্লিপের মাধ্যমে এটি করতে ব্যবহার করতে পারেন: stackoverflow.com/a/34736871/2904315 বা এই উত্তরটিতে বর্ণিত হিসাবে আপনি কেবল redis.conf ফাইলটি পরিবর্তন করতে পারেন এবং তারপরে পরিষেবাটি পুনরায় আরম্ভ করতে পারবেন:systemctl restart redis
অ্যাক্রোনিক্স

লিনাক্সে, redis.confফাইলটি অবস্থিত/etc/redis/redis.conf
আমিন শোজেই

77

আপনি যদি redis.conf(ডিভ / টেস্ট এনভায়রনমেন্টস) সাথে খেলা এড়াতে চান তবে আপনি এটি কমান্ড লাইনের মাধ্যমে করতে পারেন

redis-server --save "" --appendonly no

(redis সার্ভারের সাথে পরীক্ষিত 3.2.6এবং 5.0.5)


4
আপনি কি নিশ্চিত যে --appendonly noএটি প্রয়োজনীয়? এটি কি পূর্বনির্ধারিতভাবে বন্ধ হয় না?
আলেকারসন

4
সত্য হতে পারে। তবে এটি অবশ্যই সেখানে যুক্ত করতে ব্যথিত হবে না, কেবল নিরাপদ পাশে থাকার জন্য, আমরা যা চাই তা হ'ল সব ধরণের অধ্যবসায় অক্ষম করা;)
কোস্টিস

হুম, ডাব্লুএসএলে উইন্ডোজ 10-এ আমার পক্ষে কাজ করেনি (উবুন্টু 16)
জেমস জেনেটস

টুইট এটি আমার ফেডোরা 29 তে রেডিস 5.0.3 দিয়ে কাজ করে, এটি এখন পরীক্ষা করেছে। সম্ভবত আপনার কি উইন্ডোজে অন্যভাবে আর্গুমেন্টগুলি পাস করতে হবে? রেডিস সংস্করণটি কী? redis-server --helpসম্ভবত কিছু অন্তর্দৃষ্টি দিতে পারে
কোস্টিস

4
5.0.5 সংস্করণেও কাজ করে।
আব্বাস

18

যেহেতু এওএফ (অ্যাপেন্ডোনালি) ডিফল্টরূপে অক্ষম থাকে তাই রেডিস পরিষেবা পুনরায় চালু না করেই অধ্যবসায় অক্ষম করার জন্য কেবলমাত্র একটি কাজ করা হয় সেভ কনফিগারেশন অক্ষম করা।

এটি রানটাইম এ অক্ষম করার জন্য এবং কমান্ডের নীচে রান রান যাচাই করার জন্য

বর্তমান সংরক্ষণ কনফিগারেশন পরীক্ষা করুন

pawan@devops:~$ redis-cli config get save
1) "save"
2) "900 1 300 10 60 10000"

একই সেটিংস redis.conf ফাইলে উপস্থিত থাকবে

pawan@devops:~$ grep -w 'save' /etc/redis/redis.conf | grep -v '#'
save 900 1
save 300 10
save 60 10000

সংরক্ষণ কনফিগারেশন অক্ষম করুন

pawan@devops:~$ redis-cli config set save ""
OK

নতুন সেভ কনফিগারেশনের সাহায্যে redis.conf ফাইলটি পরিবর্তন করুন যাতে redis পরিষেবা পুনরায় সূচনাতে কনফিগারেশন স্থায়ী থাকে

root@ip-172-16-3-114:~# redis-cli config rewrite
OK

নতুন সংরক্ষণের কনফিগারেশনটি নিশ্চিত করুন

pawan@devops:~$ redis-cli config get save
1) "save"
2) ""

এখন আপনি যদি কনফিগারেশন সংরক্ষণের জন্য redis.conf ফাইলটি স্ক্যান করেন তবে কোনও ফলাফল হবে না

pawan@devops:~$ grep -w 'save' /etc/redis/redis.conf | grep -v '#'  
pawan@devops:~$

8

আরডিবি স্ন্যাপশ্যাটিংয়ের জন্য আপনি এটি ব্যবহার করে এটি অক্ষম করতে পারেন

$ sed -e '/save/ s/^#*/#/' -i /etc/redis/redis.conf && sudo service redis-server restart

এটি redis.conf- এ সংরক্ষণের রেখাগুলি মন্তব্য করবে এবং redis-সার্ভার পুনরায় চালু করবে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.