<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[প্রজন্ম ফোরাম - মাইসিক্ল-এ মাস্টার-স্লেইভ রেপ্লিকেশন]]></title>
		<link>http://forum.projanmo.com/topic10427.html</link>
		<description><![CDATA[মাইসিক্ল-এ মাস্টার-স্লেইভ রেপ্লিকেশন এ সর্বশেষ পোস্ট]]></description>
		<lastBuildDate>Sun, 22 Feb 2009 07:49:10 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: মাইসিক্ল-এ মাস্টার-স্লেইভ রেপ্লিকেশন]]></title>
			<link>http://forum.projanmo.com/post106751.html#p106751</link>
			<description><![CDATA[<p>ধন্যবাদ আপনাকেও। এই টিউটোরিয়ালটা 5.0 বা তার পরের ভার্শনের জন্য।</p>]]></description>
			<author><![CDATA[dummy@example.com (invarbrass)]]></author>
			<pubDate>Sun, 22 Feb 2009 07:49:10 +0000</pubDate>
			<guid>http://forum.projanmo.com/post106751.html#p106751</guid>
		</item>
		<item>
			<title><![CDATA[Re: মাইসিক্ল-এ মাস্টার-স্লেইভ রেপ্লিকেশন]]></title>
			<link>http://forum.projanmo.com/post106722.html#p106722</link>
			<description><![CDATA[<p>চমৎকার পোস্ট; ধন্যবাদ ইনভারব্রাশ ভাই।(y) <br />ওরাকলে একটি অপশন আছে একই&nbsp; কাজ করার জন্যেঃ &#039;স্ন্যাপশট&#039;। </p><p>ইয়ে, আমার পিসির my.ini-র সাথে দেখি আপনার my.cnf-র অনেক প্যারামিটারই মেলে না। relay-log এর কোনোটাই নেই। আমারটা অবশ্য পুরোনো ভার্সন।</p>]]></description>
			<author><![CDATA[dummy@example.com (রুমন)]]></author>
			<pubDate>Sun, 22 Feb 2009 04:22:39 +0000</pubDate>
			<guid>http://forum.projanmo.com/post106722.html#p106722</guid>
		</item>
		<item>
			<title><![CDATA[Re: মাইসিক্ল-এ মাস্টার-স্লেইভ রেপ্লিকেশন]]></title>
			<link>http://forum.projanmo.com/post106691.html#p106691</link>
			<description><![CDATA[<p>ভাই কোম্পানীর ঠিকানাটা দেন তো জলদি! <img src="http://forum.projanmo.com/extensions/pun_bbcode_ext/smilies/big_smile.gif" alt="big_smile" title="big_smile" /></p>]]></description>
			<author><![CDATA[dummy@example.com (invarbrass)]]></author>
			<pubDate>Sat, 21 Feb 2009 20:31:56 +0000</pubDate>
			<guid>http://forum.projanmo.com/post106691.html#p106691</guid>
		</item>
		<item>
			<title><![CDATA[Re: মাইসিক্ল-এ মাস্টার-স্লেইভ রেপ্লিকেশন]]></title>
			<link>http://forum.projanmo.com/post106688.html#p106688</link>
			<description><![CDATA[<p>ভাল জিনিষ। বুক মার্ক করে রাখলাম।</p><p>চাকরী করার সময় মাইএসকিউল রেপ্লিকেশন করতাম কয়েকদিন পর পর।&nbsp; এটা + আরো কিছউ সফটওয়্যারে ইন্সটল করার চার্জ ছিল $৪০০। <br />আর আমি পুরো মাসেও $৪০০ পেতাম না। <img src="http://forum.projanmo.com/extensions/pun_bbcode_ext/smilies/cry.gif" alt="cry" title="cry" /></p>]]></description>
			<author><![CDATA[dummy@example.com (শিপলু)]]></author>
			<pubDate>Sat, 21 Feb 2009 20:26:12 +0000</pubDate>
			<guid>http://forum.projanmo.com/post106688.html#p106688</guid>
		</item>
		<item>
			<title><![CDATA[মাইসিক্ল-এ মাস্টার-স্লেইভ রেপ্লিকেশন]]></title>
			<link>http://forum.projanmo.com/post106686.html#p106686</link>
			<description><![CDATA[<p>মাইসিক্ল-এ মাস্টার-স্লেইভ রেপ্লিকেশন নিয়ে নাড়াচাড়া করছি ইদানীং। যেটুকু শিখেছি, তাই আপাততঃ শেয়ার করছি সবার সাথে।</p><p>মাস্টার স্লেইভ রেপ্লিকেশন করার বেশ কিছু সুবিধা আছে, যেমনঃ<br />মূল ডেটাবেইজ সার্ভার থেকে অনেক কুয়েরী অফ্লোড করে সার্ভারের লোড অনেকটা কমানো যাবে। মাস্টার সার্ভারটি write প্রিডমিনেন্ট কুয়েরী INSERT, UPDATE প্রসেস করুক, এই ফাঁকে আপনি স্লেইভ সার্ভার থেকে রিড-অনলী কুয়েরী (SELECT) করে ফেলতে পারবেন। ল্যাগ টাইম অনেক কমে যাবে (অবশ্য কোড কম্পলেক্সিটিও একটু বেড়ে যাবে)।<br />আপকামিং পিএইচপি ৫,৩-এ নতুন মাইসিক্ল নেটিভ ড্রাইভার (MySQL-nd) থাকছে, ওটা দিয়ে এক সাথে অনেকগুলো প্যারালাল অ্যাসিঙ্ক কুয়েরী করা যায়। হেভীলী লোডেড সার্ভারে এই ফীচার প্রচুর উপকারে আসবে বলে মনে হচ্ছে।<br />এছাড়া স্লেইভ সার্ভার থেকে সহজেই mysqldump করে ব্যাকআপ নিতে পারবেন, আপনার মাস্টার সার্ভার তো ফ্রী থেকে যাচ্ছে, ইউজাররা টেরই পাবেনা। যা ল্যাগ হবার তা স্লেইভ সার্ভারেই হবে। কিন্তু সরাসরি মাস্টার সার্ভারে ব্যাকআপ চালাতে গেলে (বিশেষ করে যদি বড় সড় মাল্টিগিগাবাইট ডেটাবেইজ হয়) সাইট কিছুক্ষণের জন্য হলেও লক আপ হয়ে যাবে। অতএব মাস্টার সার্ভারের লোড এ্যাভারেজ কম রাখতে চাইলে ব্যাকআপের স্টীমরোলার স্লেইভের উপর দিয়েই চালানো বুদ্ধিমানের কাজ। ট্রিইইং! <img src="http://forum.projanmo.com/extensions/pun_bbcode_ext/smilies/dancing.gif" alt="dancing" title="dancing" /></p><p>যাক এবার মূল কাজের কথায় আসি। ধরি আমার কনফিগারেশন এইরকমঃ<br /></p><div class="codebox"><pre><code>মাস্টার সার্ভার আইপিঃ 1.0.0.1
স্লেইভ সার্ভার আইপিঃ 1.0.0.2
স্লেইভ ইউজারঃ slaveuser
স্লেইভ পাসোয়ার্ডঃ slavepass
ডেটা ডাইরেক্টরীঃ /usr/local/mysql/var/</code></pre></div><p>আমি ভিএমঅয়্যারে দুইটা ভার্চুয়াল মেশিন ফেডারেশন করে এই সেটআপটা করেছিলাম, তবে আশা করি কোন পরিবর্তন ছাড়াই ফিজিকাল সার্ভারে ইম্পলিমেন্ট করা যাবে।<br />এবার মাস্টার সার্ভারের my.cnf-এর [mysqld] সেকশনটা এইরকম হবেঃ<br /></p><div class="codebox"><pre><code>server-id = 1
relay-log = /usr/local/mysql/var/mysql-relay-bin
relay-log-index = /usr/local/mysql/var/mysql-relay-bin.index
log-error = /usr/local/mysql/var/mysql.err
master-info-file = /usr/local/mysql/var/mysql-master.info
relay-log-info-file = /usr/local/mysql/var/mysql-relay-log.info
datadir = /usr/local/mysql/var
log-bin = /usr/local/mysql/var/mysql-bin</code></pre></div><p>ঠিক একই ভাবে স্লেইভ সার্ভারের my.cnf-এ [mysqld] সেকশনে এইভাবে লিখতে হবে<br /></p><div class="codebox"><pre><code>server-id = 2
relay-log = /usr/local/mysql/var/mysql-relay-bin
relay-log-index = /usr/local/mysql/var/mysql-relay-bin.index
log-error = /usr/local/mysql/var/mysql.err
master-info-file = /usr/local/mysql/var/mysql-master.info
relay-log-info-file = /usr/local/mysql/var/mysql-relay-log.info
datadir = /usr/local/mysql/var</code></pre></div><p>বিঃদ্রঃ server-id অংশটা খেয়াল করুন। এটা দুই সার্ভারে অবশ্যই আলাদা হতে হবে।</p><p>এখন মাস্টারে নতুন ইউজার বানানঃ<br /></p><div class="codebox"><pre><code>mysql&gt; grant replication slave on *.* to slaveuser@&#039;1.0.0.2&#039; identified by &#039;slavepass&#039;;</code></pre></div><p>আপনার ডেটাবেইজে যদি আগে থেকেই ডেটা থাকে তবে…<br />মাস্টারে ডাম্প করুন...<br /></p><div class="codebox"><pre><code>mysqldump -u root --all-databases --single-transaction --master-data=1 &gt; masterdump.sql</code></pre></div><p>আর স্লেইভে ইম্পোর্ট করুন...<br /></p><div class="codebox"><pre><code>mysql &lt; masterdump.sql</code></pre></div><p>এইবার স্লেইভের ক্লায়েন্টে-এ ঢুকে মাস্টারের কনফিগ অ্যাড করুনঃ<br /></p><div class="codebox"><pre><code>mysql&gt; CHANGE MASTER TO MASTER_HOST=&#039;1.0.0.1&#039;, MASTER_USER=&#039;slaveuser&#039;, MASTER_PASSWORD=&#039;slavepass&#039;;</code></pre></div><p>ওক্কে, কনফিগারেশন এবং ডেটা ইম্পোর্ট তো হয়ে গেলো। এইবার বুকে ফুঁ দিয়ে চাকর বাবাজীকে স্টার্ট করেনঃ<br /></p><div class="codebox"><pre><code>mysql&gt; start slave;</code></pre></div><p>সব ঠিকঠাক থাকলে চাকর সাহেবের রিয়েল টাইম স্টেটাস দেখতে পারবেন এই কমান্ড দিয়েঃ<br /></p><div class="codebox"><pre><code>mysql&gt; show slave status</code></pre></div><p>তবে স্লেইভ আর মাস্টারের লাস্ট রেকর্ড কাউন্ট সব সময় একই হবে না। বেশিরভাগ ক্ষেত্রেই মাস্টার থেকে স্লেইভ একটু পিছিয়ে থাকবে।</p>]]></description>
			<author><![CDATA[dummy@example.com (invarbrass)]]></author>
			<pubDate>Sat, 21 Feb 2009 20:13:05 +0000</pubDate>
			<guid>http://forum.projanmo.com/post106686.html#p106686</guid>
		</item>
	</channel>
</rss>
