<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>稀饭的国度 &#187; 知识/探索</title>
	<atom:link href="http://blog.thematice.com/html/ytag/%e7%9f%a5%e8%af%86%e6%8e%a2%e7%b4%a2/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.thematice.com</link>
	<description>发现自己的脑袋不好使了，用blog来记录真的很好用。</description>
	<lastBuildDate>Thu, 09 Feb 2012 13:33:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Ubuntu7.10上架设samba服务</title>
		<link>http://blog.thematice.com/html/y2007/29_ubuntu710%e4%b8%8a%e6%9e%b6%e8%ae%besamba%e6%9c%8d%e5%8a%a1.html#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ubuntu710%25e4%25b8%258a%25e6%259e%25b6%25e8%25ae%25besamba%25e6%259c%258d%25e5%258a%25a1</link>
		<comments>http://blog.thematice.com/html/y2007/29_ubuntu710%e4%b8%8a%e6%9e%b6%e8%ae%besamba%e6%9c%8d%e5%8a%a1.html#comments</comments>
		<pubDate>Sun, 18 Nov 2007 23:19:06 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[Linux tools]]></category>
		<category><![CDATA[windows共享]]></category>
		<category><![CDATA[架设samba]]></category>
		<category><![CDATA[架设smb服务]]></category>
		<category><![CDATA[知识/探索]]></category>
		<category><![CDATA[访问linux共享]]></category>

		<guid isPermaLink="false">http://www.gruelstate.cn/index.php/2007/11/19/ubuntu710%e4%b8%8a%e6%9e%b6%e8%ae%besamba%e6%9c%8d%e5%8a%a1/</guid>
		<description><![CDATA[1、安装samba服务。   sudo apt-get install samba smbfs 2、建立一个共享share。可以匿名访问，只能读。用户smbuser可以写和读。    1）、sudo groupadd -g 300 smb        2）、sudo useradd -u 300 -g 300 -d /dev/null -s /dev/null smbguest        3）、smbguest 要和你在 guest account = smbguest 字段中定义的一致（见后面修改smb配置文件）。    4）、sudo useradd -u 301 -g 300 -d /dev/null -s /dev/null smbuser      5）、security = user（见后面修改smb配置文件）。    6）、sudo mkdir /home/smbhome    [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2007/29_ubuntu710%e4%b8%8a%e6%9e%b6%e8%ae%besamba%e6%9c%8d%e5%8a%a1.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>配置MySQL主从复制(Replication)</title>
		<link>http://blog.thematice.com/html/y2007/28_%e9%85%8d%e7%bd%aemysql%e4%b8%bb%e4%bb%8e%e5%a4%8d%e5%88%b6replication.html#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e9%2585%258d%25e7%25bd%25aemysql%25e4%25b8%25bb%25e4%25bb%258e%25e5%25a4%258d%25e5%2588%25b6replication</link>
		<comments>http://blog.thematice.com/html/y2007/28_%e9%85%8d%e7%bd%aemysql%e4%b8%bb%e4%bb%8e%e5%a4%8d%e5%88%b6replication.html#comments</comments>
		<pubDate>Sun, 18 Nov 2007 22:54:38 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysql备份]]></category>
		<category><![CDATA[mysql复制]]></category>
		<category><![CDATA[replication]]></category>
		<category><![CDATA[知识/探索]]></category>

		<guid isPermaLink="false">http://www.gruelstate.cn/index.php/2007/11/19/%e9%85%8d%e7%bd%aemysql%e4%b8%bb%e4%bb%8e%e5%a4%8d%e5%88%b6replication/</guid>
		<description><![CDATA[MySQL支持单向、异步复制，复制过程中一个服务器充当主服务器，而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件，并维护日志文件的一个索引以跟踪日志循环。当一个从服务器连接到主服务器时，它通知主服务器从服务器在日志中读取的最后一次成功更新的位置。从服务器接收从那时起发生的任何更新，然后封锁并等待主服务器通知下一次更新。 为什么使用主从复制？ 1、主服务器/从服务器设置增加了健壮性。主服务器出现问题时，你可以切换到从服务器作为备份。 2、通过在主服务器和从服务器之间切分处理客户查询的负荷，可以得到更好的客户响应时间。但是不要同时在主从服务器上进行更新，这样可能引起冲突。 3、使用复制的另一个好处是可以使用一个从服务器执行备份，而不会干扰主服务器。在备份过程中主服务器可以继续处理更新。 MySQL使用3个线程来执行复制功能(其中1个在主服务器上，另两个在从服务器上。当发出START SLAVE时，从服务器创建一个I/O线程，以连接主服务器并让主服务器发送二进制日志。主服务器创建一个线程将二进制日志中的内容发送到从服务器。从服务器I/O线程读取主服务器Binlog Dump线程发送的内容并将该数据拷贝到从服务器数据目录中的本地文件中，即中继日志。第3个线程是SQL线程，从服务器使用此线程读取中继日志并执行日志中包含的更新。SHOW PROCESSLIST语句可以查询在主服务器上和从服务器上发生的关于复制的信息。 默认中继日志使用host_name-relay-bin.nnnnnn形式的文件名，其中host_name是从服务器主机名，nnnnnn是序列号。用连续序列号来创建连续中继日志文件，从000001开始。从服务器跟踪中继日志索引文件来识别目前正使用的中继日志。默认中继日志索引文件名为host_name-relay-bin.index。在默认情况，这些文件在从服务器的数据目录中被创建。中继日志与二进制日志的格式相同，并且可以用mysqlbinlog读取。当SQL线程执行完中继日志中的所有事件后，中继日志将会被自动删除。 从服务器在数据目录中另外创建两个状态文件&#8211;master.info和relay-log.info。状态文件保存在硬盘上，从服务器关闭时不会丢失。下次从服务器启动时，读取这些文件以确定它已经从主服务器读取了多少二进制日志，以及处理自己的中继日志的程度。 设置主从复制： 1、确保在主服务器和从服务器上安装的MySQL版本相同，并且最好是MySQL的最新稳定版本。 2、在主服务器上为复制设置一个连接账户。该账户必须授予REPLICATION SLAVE权限。如果账户仅用于复制(推荐这样做)，则不需要再授予任何其它权限。 mysql&#62; GRANT REPLICATION SLAVE ON *.*     -&#62; TO &#8216;replication&#8217;@'%.yourdomain.com&#8217; IDENTIFIED BY &#8216;slavepass&#8217;; 3、执行FLUSH TABLES WITH READ LOCK语句清空所有表和块写入语句： mysql&#62; FLUSH TABLES WITH READ LOCK； 保持mysql客户端程序不要退出。开启另一个终端对主服务器数据目录做快照。 shell&#62; cd /usr/local/mysql/ shell&#62; tar -cvf /tmp/mysql-snapshot.tar ./data 如果从服务器的用户账户与主服务器的不同，你可能不想复制mysql数据库。在这种情况下，应从归档中排除该数据库。你也不需要在归档中包括任何日志文件或者master.info或relay-log.info文件。 当FLUSH TABLES WITH READ LOCK所置读锁定有效时（即mysql客户端程序不退出)，读取主服务器上当前的二进制日志名和偏移量值： mysql [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2007/28_%e9%85%8d%e7%bd%aemysql%e4%b8%bb%e4%bb%8e%e5%a4%8d%e5%88%b6replication.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL 备份和恢复策略（三）</title>
		<link>http://blog.thematice.com/html/y2007/27_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5%ef%bc%88%e4%b8%89%ef%bc%89.html#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mysql-%25e5%25a4%2587%25e4%25bb%25bd%25e5%2592%258c%25e6%2581%25a2%25e5%25a4%258d%25e7%25ad%2596%25e7%2595%25a5%25ef%25bc%2588%25e4%25b8%2589%25ef%25bc%2589</link>
		<comments>http://blog.thematice.com/html/y2007/27_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5%ef%bc%88%e4%b8%89%ef%bc%89.html#comments</comments>
		<pubDate>Sun, 18 Nov 2007 22:47:18 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysql备份恢复]]></category>
		<category><![CDATA[mysql备份策略]]></category>
		<category><![CDATA[mysql恢复策略]]></category>
		<category><![CDATA[知识/探索]]></category>

		<guid isPermaLink="false">http://www.gruelstate.cn/index.php/2007/11/19/mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5%ef%bc%88%e4%b8%89%ef%bc%89/</guid>
		<description><![CDATA[mysqlDailyBackup.sh注释：  #!/bin/sh # Name:mysqlDailyBackup.sh # PS:MySQL DataBase Daily Backup. # Write by:i.Stone # Last Modify:2007-11-17 # # 定义变量，请根据具体情况修改 # 定义数据库目录和数据目录 scriptsDir=`pwd` mysqlDir=/usr/local/mysql dataDir=$mysqlDir/data # 定义用于备份数据库的用户名和密码 user=root userPWD=111111 # 定义备份目录，每日备份文件备份到$dataBackupDir/daily dataBackupDir=/tmp/mysqlbackup dailyBackupDir=$dataBackupDir/daily # 定义邮件正文文件 eMailFile=$dataBackupDir/email.txt # 定义邮件地址 eMail=alter@somode.com # 定义日志文件 logFile=$dataBackupDir/mysqlbackup.log # 得到数据库所在主机的主机名 HOSTNAME=`uname -n` # echo “” &#62; $eMailFile echo $(date +”%y-%m-%d %H:%M:%S”) &#62;&#62; $eMailFile [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2007/27_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5%ef%bc%88%e4%b8%89%ef%bc%89.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MySQL 备份和恢复策略（二）</title>
		<link>http://blog.thematice.com/html/y2007/26_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5%ef%bc%88%e4%ba%8c%ef%bc%89.html#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mysql-%25e5%25a4%2587%25e4%25bb%25bd%25e5%2592%258c%25e6%2581%25a2%25e5%25a4%258d%25e7%25ad%2596%25e7%2595%25a5%25ef%25bc%2588%25e4%25ba%258c%25ef%25bc%2589</link>
		<comments>http://blog.thematice.com/html/y2007/26_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5%ef%bc%88%e4%ba%8c%ef%bc%89.html#comments</comments>
		<pubDate>Sun, 18 Nov 2007 22:46:18 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysql备份恢复]]></category>
		<category><![CDATA[mysql备份策略]]></category>
		<category><![CDATA[mysql恢复策略]]></category>
		<category><![CDATA[知识/探索]]></category>

		<guid isPermaLink="false">http://www.gruelstate.cn/index.php/2007/11/19/mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5%ef%bc%88%e4%ba%8c%ef%bc%89/</guid>
		<description><![CDATA[备份策略三、使用mysqldump备份数据库 mysqldump 是采用SQL级别的备份机制，它将数据表导成 SQL 脚本文件，在不同的 MySQL 版本之间升级时相对比较合适，这也是最常用的备份方法。mysqldump 比直接拷贝要慢些。关于mysqldump的更详细解释见最后的附录。 对于中等级别业务量的系统来说，备份策略可以这么定：第一次完全备份，每天一次增量备份，每周再做一次完全备份，如此一直重复。而对于重要的且繁忙的系统来说，则可能需要每天一次全量备份，每小时一次增量备份，甚至更频繁。为了不影响线上业务，实现在线备份，并且能增量备份，最好的办法就是采用主从复制机制(replication)，在 slave 机器上做备份。 备份策略布置： （1）、创建备份目录 Shell&#62; mkdir /tmp/mysqlbackup Shell&#62; mkdir /tmp/mysqlbackup/daily （2）、启用二进制日志 采用 binlog 的方法相对来说更灵活，省心省力，而且还可以支持增量备份。 启用 binlog 时必须要重启 mysqld。首先，关闭 mysqld，打开 /etc/my.cnf，加入以下几行： [mysqld] log-bin 然后启动 mysqld 就可以了。运行过程中会产生 HOSTNAME-bin.000001 以及 HOSTNAME-bin.index，前面的文件是 mysqld 记录所有对数据的更新操作，后面的文件则是所有 binlog 的索引，都不能轻易删除。关于 binlog 的更详细信息请查看手册。 （3）、配置SSH密钥登录，用于将MySQL备份传送到备份服务器（如果备份服务器为Windows，请跳过此部）。 1）、在MySQL所在服务器（192.168.0.20）生成SSH密钥 [root@lab ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa):  //直接回车 Enter passphrase (empty for no passphrase):         //直接回车，不使用密码 Enter same passphrase again:                     //直接回车，不使用密码 Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: c2:96:9f:2d:5a:8e:08:42:43:35:2f:85:5e:72:f8:1c root@lab &#160; 2）、在备份服务器（192.168.0.200）上创建目录，修改权限，并传送公钥。 [root@lab ~]# ssh 192.168.0.200 ”mkdir .ssh;chmod 0700 .ssh” The authenticity of host &#8217;192.168.0.200 (192.168.0.200)&#8217; can&#8217;t be established. RSA key fingerprint is 37:57:55:c1:32:f1:dd:bb:1b:8a:13:6f:89:fb:b8:9d. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added &#8217;192.168.0.200&#8242; (RSA) to the list of known hosts. root@192.168.0.200&#8242;s password:     //输入备份服务器的root密码 [root@lab ~]# scp .ssh/id_rsa.pub 192.168.0.200:.ssh/authorized_keys2 root@192.168.0.200&#8242;s password:  id_rsa.pub                                             100%  218     0.2KB/s   00:00     3）、测试SSH登录 [root@lab ~]# ssh 192.168.0.200       //测试SSH登录 Last login: Fri Nov 16 10:34:02 2007 from 192.168.0.20 [root@lib ~]#  &#160; （4）、设置crontab任务，每天执行备份脚本 shell&#62; crontab -e #每个星期日凌晨3:00执行完全备份脚本 0 3 * * 0 /root/MySQLBackup/mysqlFullBackup.sh &#62;/dev/null 2&#62;&#38;1 #周一到周六凌晨3:00做增量备份 0 3 * * 1-6 /root/MySQLBackup/mysqlDailyBackup.sh &#62;/dev/null 2&#62;&#38;1 &#160; mysqlFullBackup.sh注释： #!/bin/sh # Name:mysqlFullBackup.sh # PS:MySQL DataBase Full [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2007/26_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5%ef%bc%88%e4%ba%8c%ef%bc%89.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL 备份和恢复策略</title>
		<link>http://blog.thematice.com/html/y2007/25_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5.html#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mysql-%25e5%25a4%2587%25e4%25bb%25bd%25e5%2592%258c%25e6%2581%25a2%25e5%25a4%258d%25e7%25ad%2596%25e7%2595%25a5</link>
		<comments>http://blog.thematice.com/html/y2007/25_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5.html#comments</comments>
		<pubDate>Sun, 18 Nov 2007 22:44:58 +0000</pubDate>
		<dc:creator>稀饭</dc:creator>
				<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysql备份策略]]></category>
		<category><![CDATA[mysql恢复策略]]></category>
		<category><![CDATA[知识/探索]]></category>

		<guid isPermaLink="false">http://www.gruelstate.cn/index.php/2007/11/19/mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5/</guid>
		<description><![CDATA[在数据库表丢失或损坏的情况下，备份你的数据库是很重要的。如果发生系统崩溃，你肯定想能够将你的表尽可能丢失最少的数据恢复到崩溃发生时的状态。本文主要对MyISAM表做备份恢复。 &#160; 备份策略一：直接拷贝数据库文件（不推荐） 备份策略二：使用mysqlhotcopy备份数据库（完全备份，适合小型数据库备份） 备份策略三：使用mysqldump备份数据库（完全+增量备份，适合中型数据库备份） 备份策略四：使用主从复制机制(replication)（实现数据库实时备份） &#160; 脚本下载地址：点击下载脚本 &#160; 备份策略一、直接拷贝数据库文件 直接拷贝数据文件最为直接、快速、方便，但缺点是基本上不能实现增量备份。为了保证数据的一致性，需要在备份文件前，执行以下 SQL 语句： FLUSH TABLES WITH READ LOCK; 也就是把内存中的数据都刷新到磁盘中，同时锁定数据表，以保证拷贝过程中不会有新的数据写入。这种方法备份出来的数据恢复也很简单，直接拷贝回原来的数据库目录下即可。 &#160; 备份策略二、使用mysqlhotcopy备份数据库 mysqlhotcopy 是一个 PERL 程序，最初由Tim Bunce编写。它使用 LOCK TABLES、FLUSH TABLES 和 cp 或 scp 来快速备份数据库。它是备份数据库或单个表的最快的途径，但它只能运行在数据库文件（包括数据表定义文件、数据文件、索引文件）所在的机器上，并且mysqlhotcopy 只能用于备份 MyISAM表。 本备份策略适合于小型数据库的备份，数据量不大，可以采用mysqlhotcopy程序每天进行一次完全备份。 备份策略布置： （1）、安装DBD-mysql perl模块，支持mysqlhotcopy脚本连接到MySQL数据库。 shell&#62; tar -xzvf  DBD-mysql-4.005.tar.gz shell&#62; cd DBD-mysql-4.005 shell&#62; unset LANG shell&#62; perl Makefile.PL -mysql_config=/usr/local/mysql/bin/mysql_config -testuser=root -testpassword=UserPWD shell&#62; make shell&#62; make test shell&#62; make install （2）、设置crontab任务，每天执行备份脚本 shell&#62; crontab -e 0 3 * * * /root/MySQLBackup/mysqlbackup.sh &#62;/dev/null 2&#62;&#38;1 每天凌晨3:00执行备份脚本。 &#160; mysqlbackup.sh注释： #!/bin/sh # Name:mysqlbackup.sh # PS:MySQL DataBase Backup,Use mysqlhotcopy script. # Write by:i.Stone # Last Modify:2007-11-15 # # 定义变量，请根据具体情况修改 # 定义脚本所在目录 scriptsDir=`pwd` # 数据库的数据目录 [...]]]></description>
		<wfw:commentRss>http://blog.thematice.com/html/y2007/25_mysql-%e5%a4%87%e4%bb%bd%e5%92%8c%e6%81%a2%e5%a4%8d%e7%ad%96%e7%95%a5.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

