অ্যান্ড্রয়েড

মাইএসকিএল (মারিয়াদব) মাস্টার কীভাবে কনফিগার করবেন

কিভাবে কনফিগার মাইএসকিউএল মাস্টার-স্লেভ উবুন্টু লিনাক্স আত্ম থেকে

কিভাবে কনফিগার মাইএসকিউএল মাস্টার-স্লেভ উবুন্টু লিনাক্স আত্ম থেকে

সুচিপত্র:

Anonim

মাইএসকিউএল প্রতিলিপি হ'ল এক ডেটাবেস সার্ভার (মাস্টার) থেকে এক বা একাধিক সার্ভারে (স্লেভ) ডেটা অনুলিপি করার প্রক্রিয়া।

মাইএসকিউএল মাস্টার / স্লেভ টপোলজি সর্বাধিক পরিচিত টপোলজিসমূহে একাধিক প্রতিলিপি টোপোলজিকে সমর্থন করে যেখানে একটি ডাটাবেস সার্ভার মাস্টার হিসাবে কাজ করে, যখন এক বা একাধিক সার্ভার ক্রীতদাস হিসাবে কাজ করে। ডিফল্টরূপে, প্রতিলিপিটি অ্যাসিনক্রোনাস যেখানে মাস্টার ইভেন্টগুলি প্রেরণ করে যা তার বাইনারি লগে ডেটাবেস পরিবর্তনগুলি বর্ণনা করে এবং ক্রীতদাসরা ইভেন্টগুলি প্রস্তুত হওয়ার জন্য অনুরোধ করে।

এই গাইডের মধ্যে, আমরা আপনাকে দেখাব যে কীভাবে মারিয়ানডিবি মাস্টার / স্লেভ প্রতিলিপিটি ডেবিয়ান ১০-তে একটি মাস্টার এবং একটি স্লেভ সার্ভারের সাথে সেটআপ করবেন। মারিয়ানাডিবি হ'ল ডেবিয়ানের মাইএসকিউএল এর ডিফল্ট বাস্তবায়ন। একই পদক্ষেপগুলি ওরাকল মাইএসকিউএল-এর জন্য প্রযোজ্য।

এই জাতীয় প্রতিলিপি টোপোলজি পড়ার স্কেলিংয়ের জন্য পঠিত প্রতিলিপি স্থাপন, দুর্যোগ পুনরুদ্ধারের জন্য লাইভ ডাটাবেস ব্যাকআপ এবং বিশ্লেষণমূলক কাজের জন্য সবচেয়ে উপযুক্ত।

পূর্বশর্ত

আমরা ধরে নিচ্ছি যে আপনার দুটি ডেভার 10 চালাচ্ছেন ডিবিয়ান 10 চালাচ্ছেন, একটি ব্যক্তিগত নেটওয়ার্কের মাধ্যমে একে অপরের সাথে যোগাযোগ করছেন। যদি আপনার হোস্টিং সরবরাহকারী ব্যক্তিগত আইপি ঠিকানাগুলি সমর্থন না করে তবে আপনি বিশ্বস্ত উত্স থেকে 3306 পোর্টে ট্র্যাফিকের অনুমতি দিতে আপনি সর্বজনীন আইপি ঠিকানাগুলি ব্যবহার করতে পারেন এবং আপনার ফায়ারওয়ালটি কনফিগার করতে পারেন।

এই উদাহরণে ব্যবহৃত সার্ভারগুলির নিম্নলিখিত আইপি ঠিকানা রয়েছে:

Master IP: 10.10.8.12 Slave IP: 10.10.8.164

মারিয়াডিবি ইনস্টল করা হচ্ছে

ডিফল্ট 10 টি ডিপোজিটরিগুলিতে মারিয়াডিবি সংস্করণ 10.3 রয়েছে। কোনও সম্ভাব্য সমস্যা এড়াতে উভয় সার্ভারে একই মারিয়াডিবি সংস্করণ ইনস্টল করা ভাল।

নিম্নলিখিত আদেশগুলি জারি করে মাস্টার এবং স্লেভ উভয়কেই মারিয়াডিবি ইনস্টল করুন:

sudo apt-get update sudo apt-get install mariadb-server

মাস্টার সার্ভার কনফিগার করা হচ্ছে

প্রথম পদক্ষেপটি হ'ল মাস্টার সার্ভার সেট আপ করা। আমরা নিম্নলিখিত পরিবর্তনগুলি করব:

  • বেসরকারী আইপি শুনতে মারিয়াডিবি সার্ভারটি সেট করুন a একটি অনন্য সার্ভার আইডি সেট করুন b বাইনারি লগিং সক্ষম করুন।

মারিয়াডিবি কনফিগারেশন ফাইল এবং আনকোমমেন্ট খুলুন বা নিম্নলিখিত লাইনগুলি সেট করুন:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf মাস্টার: /etc/mysql/mariadb.conf.d/50-server.cnf

bind-address = 10.10.8.12 server-id = 1 log_bin = /var/log/mysql/mysql-bin.log

একবার হয়ে গেলে, ফাইলগুলি সংরক্ষণ করুন এবং পরিবর্তনগুলি কার্যকর করতে মাইএসকিউএল পরিষেবাটি পুনরায় চালু করুন:

sudo systemctl restart mariadb

পরবর্তী পদক্ষেপটি একটি নতুন প্রতিলিপি ব্যবহারকারী তৈরি করা। রুট ব্যবহারকারী হিসাবে মারিয়াডিবি সার্ভারে লগ ইন করুন:

sudo mysql

replica নামের একটি ব্যবহারকারী তৈরি করতে এবং ব্যবহারকারীকে REPLICATION SLAVE সুবিধা দেওয়ার জন্য নিম্নলিখিত এসকিউএল কোয়েরিগুলি চালান:

CREATE USER 'replica'@'10.10.8.164' IDENTIFIED BY 'replica_password';

GRANT REPLICATION SLAVE ON *.* TO 'replica'@'10.10.8.164'; আপনার স্লেভ আইপি ঠিকানা দিয়ে আপনি আইপি পরিবর্তন করেছেন তা নিশ্চিত করুন। আপনি নিজের ইচ্ছামত ব্যবহারকারীর নাম রাখতে পারেন।

মাইএসকিউএল প্রম্পটের ভিতরে থাকা অবস্থায়, নিম্নলিখিত কমান্ডটি প্রয়োগ করুন যা বাইনারি ফাইলের নাম এবং অবস্থান মুদ্রণ করবে।

SHOW MASTER STATUS\G

*************************** 1. row *************************** File: mysql-bin.000001 Position: 328 Binlog_Do_DB: Binlog_Ignore_DB: 1 row in set (0.001 sec)

ফাইলের নাম, 'mysql-bin.000001' এবং অবস্থান '328' নোট করুন। স্লেভ সার্ভারটি কনফিগার করার সময় এই মানগুলি প্রয়োজনীয় এবং সম্ভবত আপনার সার্ভারে আলাদা হবে।

স্লেভ সার্ভার কনফিগার করা হচ্ছে

আমরা স্লেভ সার্ভারে মাস্টার হিসাবে একই পরিবর্তন করব:

  • প্রাইভেট আইপি শুনতে মাইএসকিউএল সার্ভার সেট করুন a একটি অনন্য সার্ভার আইডি সেট করুন b বাইনারি লগিং সক্ষম করুন।

মারিয়াডিবি কনফিগারেশন ফাইলটি খুলুন এবং নিম্নলিখিত লাইনগুলি সম্পাদনা করুন:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf ক্রীতদাস: /etc/mysql/mariadb.conf.d/50-server.cnf

bind-address = 10.10.8.164 server-id = 2 log_bin = /var/log/mysql/mysql-bin.log

মারিয়াডিবি পরিষেবাটি পুনরায় চালু করুন:

sudo systemctl restart mariadb

পরবর্তী পদক্ষেপটি হ'ল গোলাপ সার্ভার যে প্যারামিটারগুলি মাস্টার সার্ভারের সাথে সংযোগ করতে ব্যবহার করবে তা কনফিগার করা। মারিয়াডিবি শেলটিতে লগইন করুন:

sudo mysql

দাস থ্রেডগুলি বন্ধ করে শুরু করুন:

STOP SLAVE;

মাস্টার / স্লেভ প্রতিলিপিটি কনফিগার করতে নিম্নলিখিত কোয়েরিটি চালান:

CHANGE MASTER TO MASTER_HOST='10.10.8.12', MASTER_USER='replica', MASTER_PASSWORD='replica_password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=328;

নিশ্চিত হয়ে নিন যে আপনি সঠিক আইপি ঠিকানা, ব্যবহারকারীর নাম এবং পাসওয়ার্ড ব্যবহার করছেন। লগ ফাইলের নাম এবং অবস্থান অবশ্যই মাস্টার সার্ভার থেকে প্রাপ্ত মানগুলির সমান হতে হবে।

হয়ে গেলে দাস থ্রেডগুলি শুরু করুন।

START SLAVE;

কনফিগারেশন পরীক্ষা করুন

এই মুহুর্তে, আপনার একটি কার্যকরী মাস্টার / স্লেভের প্রতিলিপি সেটআপ করা উচিত।

সবকিছু সঠিকভাবে সেট আপ হয়েছে তা যাচাই করতে, মাস্টার সার্ভারে একটি নতুন ডাটাবেস তৈরি করুন:

sudo mysql

CREATE DATABASE replicatest;

দাস মাইএসকিউএল শেলটিতে লগইন করুন:

sudo mysql

সমস্ত ডাটাবেস তালিকাভুক্ত করতে নিম্নলিখিত কমান্ডটি চালান:

SHOW DATABASES;

আপনি লক্ষ্য করবেন যে মাস্টার সার্ভারে আপনি যে ডাটাবেসটি তৈরি করেছেন তা ক্রীতদাসে প্রতিলিপি করা হয়েছে:

+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | replicatest | | sys | +--------------------+ 5 rows in set (0.00 sec)

উপসংহার

এই টিউটোরিয়ালে, আমরা আপনাকে দেবি 10 তে একটি মারিয়াডিবি মাস্টার / স্লেভ প্রতিলিপি তৈরি করতে দেখিয়েছি।

আপনার কোনও প্রশ্ন থাকলে নির্দ্বিধায় কোনও মন্তব্য করুন leave

ডেবিয়ান মাইএসকিএল মারিয়্যাডবি