<?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>{finalbug.org} &#187; MySQL</title>
	<atom:link href="http://finalbug.org/tag/mysql/feed/" rel="self" type="application/rss+xml" />
	<link>http://finalbug.org</link>
	<description>Keep it simple &#38; stupid</description>
	<lastBuildDate>Sun, 20 May 2012 06:04:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>速记，mysql的一些操作</title>
		<link>http://finalbug.org/2009/07/%e9%80%9f%e8%ae%b0%ef%bc%8cmysql-alter%e6%93%8d%e4%bd%9c/</link>
		<comments>http://finalbug.org/2009/07/%e9%80%9f%e8%ae%b0%ef%bc%8cmysql-alter%e6%93%8d%e4%bd%9c/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 03:04:30 +0000</pubDate>
		<dc:creator>Tang Bin</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://finalbug.org/?p=944</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>添加字段</p>
<p>ALTER TABLE <em>table_name</em> ADD <em>field_name smallint default 1</em>;</p>
<p>删除字段</p>
<p>ALTER TABLE <em>table_name</em> DROP <em>field_name</em>;</p>
<p>修改字段</p>
<p>alter table <em>table_name</em> change <em>old_field new_field char(10) not null</em>;</p>
<p>添加字段并设置主键</p>
<p>ALTER TABLE <em>table_name</em> ADD new_field_id int(5) unsigned default 0 not null auto_increment, ADD primary key (new_field_id);</p>
<p>加主关键字的索引</p>
<p>ALTER TABLE <em>table_name</em> ADD primary key(id);</p>
<p>加索引</p>
<p>ALTER TABLE <em>table_name</em> CHANGE depno depno int(5) not null;<br />
ALTER TABLE <em>table_name</em> ADD INDEX 索引名 (字段名1[，字段名2 …]);<br />
ALTER TABLE <em>table_name</em> ADD INDEX emp_name (name);</p>
<p>加唯一限制条件的索引</p>
<p>ALTER TABLE <em>table_name</em> ADD UNIQUE emp_name2(cardnumber);</p>
<p>删除某个索引</p>
<p>ALTER TABLE <em>table_name</em> DROP INDEX emp_name;</p>
<p>重命名列</p>
<p>ALTER TABLE <em>table_name</em> CHANGE field_name1 field_name2 integer;</p>
<p>重命名表</p>
<p>ALTER TABLE <em>table_name</em> rename <em>new_table_name</em>;</p>
<p><strong>delete和truncate</strong></p>
<p>使用delete并不会让数据库索引清零，因此如果想要清空数据库的内容，并且让索引清零，最好使用truncate：</p>
<p>TRUNCATE TABLE <em>table_name</em>;</p>
<p>如果使用delete清空数据库，也可以：</p>
<p>DELETE FROM <em>table_name</em><br />
set insert_id = 1;</p>
<p>truncate不需要创建索引，因此会比delete快。</p>
]]></content:encoded>
			<wfw:commentRss>http://finalbug.org/2009/07/%e9%80%9f%e8%ae%b0%ef%bc%8cmysql-alter%e6%93%8d%e4%bd%9c/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>速记，mysql访问的问题</title>
		<link>http://finalbug.org/2009/07/%e9%80%9f%e8%ae%b0%ef%bc%8cmysql%e8%ae%bf%e9%97%ae%e7%9a%84%e9%97%ae%e9%a2%98-2/</link>
		<comments>http://finalbug.org/2009/07/%e9%80%9f%e8%ae%b0%ef%bc%8cmysql%e8%ae%bf%e9%97%ae%e7%9a%84%e9%97%ae%e9%a2%98-2/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 03:32:27 +0000</pubDate>
		<dc:creator>Tang Bin</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://finalbug.org/?p=936</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>在S10上新安装的mysql，用PC无法连接，但是通过SSH登陆以后可以登陆。如下修改：</p>
<p>执行：<br />
[code]<br />
grant all privileges on *.* to root@'%' identified by 'password';<br />
flush privileges;<br />
[/code]<br />
root为登录名；&#8217;%'为可访问的地址；password为登陆密码。</p>
<p>修改：<br />
打开：/etc/mysql/my.cof，找到bind-address，改为机器的真实地址（我这里原本显示的是127.0.0.1，改为当前机器的IP地址），或者直接整行注释掉。</p>
<p>restart mysql。一切OK。</p>
]]></content:encoded>
			<wfw:commentRss>http://finalbug.org/2009/07/%e9%80%9f%e8%ae%b0%ef%bc%8cmysql%e8%ae%bf%e9%97%ae%e7%9a%84%e9%97%ae%e9%a2%98-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>9.18. 记录一点linux内容</title>
		<link>http://finalbug.org/2008/09/918-2/</link>
		<comments>http://finalbug.org/2008/09/918-2/#comments</comments>
		<pubDate>Thu, 18 Sep 2008 07:26:12 +0000</pubDate>
		<dc:creator>Tang Bin</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[samba]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.finalbug.com/?p=303</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><strong>九一八，勿忘国耻。</strong></p>
<p>上个星期服务器的硬盘坏掉了，我想使用FreeBSD工作的机会终于来了，但是前来再来公司的时候我不得不再次放弃FreeBSD，而且是非常彻底的放弃。因为公司屏蔽了gz等各种压缩包的下载，安装的FreeBSD完全无法通过网络升级。如果说安装简单的apache应用还可以使用安装光盘中的内容，但是安装FreeBSD的目的是为了测试服务器编程，无法通过ports安装，那就没有了大多数的意义。</p>
<p>于是服务器再次更换，使用ubuntu8.04 server版。</p>
<p>很久不使用ubuntu，但是因为简单，安装和配置服务都还算比较容易，记录一点东西，有空再来修改。</p>
<p><span id="more-2831"></span></p>
<p>apt-cache search # &#8212;&#8212;(package 搜索包)<br />
apt-cache show #&#8212;&#8212;(package 获取包的相关信息，如说明、大小、版本等)<br />
sudo apt-get install # &#8212;&#8212;(package 安装包)<br />
sudo apt-get install # &#8212;&#8211;(package &#8211; - reinstall 重新安装包)<br />
sudo apt-get -f install # &#8212;&#8211;(强制安装?#”-f = &#8211;fix-missing”当是修复安装吧&#8230;)<br />
sudo apt-get remove #&#8212;&#8211;(package 删除包)<br />
sudo apt-get remove &#8211; - purge # &#8212;&#8212;(package 删除包，包括删除配置文件等)<br />
sudo apt-get autoremove &#8211;purge # &#8212;-(package 删除包及其依赖的软件包+配置文件等（只对6.10有效，强烈推荐）)<br />
sudo apt-get update #&#8212;&#8212;更新源<br />
sudo apt-get upgrade #&#8212;&#8212;更新已安装的包<br />
sudo apt-get dist-upgrade # &#8212;&#8212;&#8212;升级系统<br />
sudo apt-get dselect-upgrade #&#8212;&#8212;使用 dselect 升级<br />
apt-cache depends #&#8212;&#8212;-(package 了解使用依赖)<br />
apt-cache rdepends # &#8212;&#8212;(package 了解某个具体的依赖?#当是查看该包被哪些包依赖吧&#8230;)<br />
sudo apt-get build-dep # &#8212;&#8212;(package 安装相关的编译环境)<br />
apt-get source #&#8212;&#8212;(package 下载该包的源代码)<br />
sudo apt-get clean &amp;&amp; sudo apt-get autoclean # &#8212;&#8212;&#8211;清理下载文件的存档 &amp;&amp; 只清理过时的包<br />
sudo apt-get check #&#8212;&#8212;-检查是否有损坏的依赖</p>
<p>dpkg -L *.deb   #&#8212;&#8212;&#8212;-查看你的deb包安装的位置</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>smb.conf文件详解</p>
<p>2008-03-05 16:32:24 / 个人分类：Linux Samba实例<br />
服务名:smb<br />
配置目录:/etc/sabma/<br />
主配置文件:/etc/sabma/smb.conf</p>
<p>#============================== Global Settings =============================</p>
<p>17行workgroup</p>
<p>语法 workgtoup = &lt;工作组群&gt;;<br />
预设 workgroup = MYGROUP<br />
说明 设定 Samba Server 的工作组<br />
例 workgroup = workgroup 和WIN2000S设为一个组，可在网上邻居可中看到共享</p>
<p>21行server string</p>
<p>语法 server string = &lt;说明&gt;;<br />
预设 sarver string = Samba Server<br />
说明 设定 Samba Server 的注释<br />
其他 支持变量 t%-访问时间 I%-客户端IP m%-客户端主机名 M%-客户端域名 S%-客户端用户名<br />
例 server string = this is a Samba Server 设定出现在Windows网上邻居的 Samba Server 注释为 this is a Samba Server</p>
<p>28行hosts allow<br />
语法 hosts aoolw = ; &#8230;<br />
预设 ; host allow = 192.168.1. 192.168.2. 127.<br />
说明 限制允许连接到 Samba Server 的机器，多个参数以空格隔开。表示方法可以为<br />
完整的IP地址，如 192.168.0.1<br />
网段，如 192.168.0.<br />
例 hosts allow = 192.168.1. 192.168.0.1 表示允许192.168.1 网段的机器 网址为192.168.0.1 的机器 连接到自己的samba server</p>
<p>32行printcap name<br />
语法 printcap name = &lt;打印机配置文件&gt;;<br />
预设 printcap name = /etc/printcap<br />
说明 设定 samba srever 打印机的配置文件<br />
例 printcap name = /etc/printcap 设定 samba srever 参考 /etc/printcap 档的打印机设定</p>
<p>33行load printers<br />
语法 load printers = ;<br />
预设 load printers = yes<br />
说明 是否在开启 samba server 时即共享打印机</p>
<p>38行printing<br />
语法 printing = &lt;打印机类型&gt;;<br />
预设 printing = lprng<br />
说明 设定 samba server 打印机所使用的类型,37行为目前所支持的类型</p>
<p>42行guest account<br />
语法 guert account = &lt;帐户名称&gt;;<br />
预设 guert account = pcguest<br />
说明 设定访问 samba server 的来宾帐户(即访问时不用输入用户名和密码的帐户),若设为pcguest的话则为默认为”nobody”用户<br />
例 guert account = andy 设定设定访问 samba server 的来宾帐户以andy用户登陆,则此登陆帐户享有andy用户的所有权限</p>
<p>46行log file<br />
语法 log file = &lt;日志文件&gt;;<br />
预设 log file = /var/log/samba/%m.log<br />
说明 设定 samba server 日志文件的储存位置和文件名(%m代表客户端主机名)</p>
<p>49行max log size<br />
语法 max log size = ;<br />
预设 max log size = 0<br />
说明 设定日子文件的最大容量,单位KB 这里的预设值0代表不做限制</p>
<p>53行security<br />
语法 security = &lt;等级&gt;;<br />
预设 security = user<br />
说明 设定访问 samba server 的安全级别 共有四种<br />
share&#8212;不需要提供用户名和密码<br />
user&#8212;-需要提供用户名和密码,而且身份验证由 samba server 负责<br />
server&#8211;需要提供用户名和密码,可指定其他机器(winNT/2000/XP)或另一台 samba server作身份验证<br />
domain&#8211;需要提供用户名和密码,指定winNT/2000/XP域服务器作身份验证</p>
<p>60行password server<br />
语法 password server = ;<br />
预设 password server = ;<br />
说明 指定某台服务器(包括windows 和 linux)的密码,作为用户登入时验证的密码<br />
其他 此项需配合 security = server时,才可设定本参数</p>
<p>64行password level<br />
65行username level<br />
语法 password level = &lt;位数&gt;;<br />
username level = &lt;位数&gt;;<br />
预设 password level = 8<br />
username level = 8<br />
说明 设定用户名和密码的位数,预设为8位字符</p>
<p>70行encrypt passwords<br />
语法 encrypt passwords = ;<br />
预设 encrypt passwords = yse<br />
说明 设定是否对samba的密码加密</p>
<p>71行smb passwd file<br />
语法 smb passwd file = &lt;密码文件&gt;;<br />
预设 smb passwd file = /etc/samba/smbpasswd<br />
说明 设定samba的密码文件</p>
<p>130行local master<br />
语法 local master = ;<br />
预设 local master = no<br />
说明 设定 samba server 是否要担当LMB角色(LMB负责收集本地网络的Browse List资源),通常无特殊原因设为no</p>
<p>134行os level = 33<br />
语法 os level = &lt;数字&gt;;<br />
预设 os level = 33<br />
说明 设定 samba server的os level. os level从 0 到 255 . winNT的os level为33, win95/98的os level 是 1 .<br />
若要拿samba server 当LMB或DMB则它的os level至少要大于NT的33以上</p>
<p>139行domain master<br />
语法 domain master = ;<br />
预设 domain master = yes<br />
说明 设定 samba server 是否要担当DMB角色(DMB会负责收集其他子网的Browse List资源),通常无特殊原因设为no</p>
<p>143行preferred master<br />
语法 preferred master = ;<br />
预设 preferred master = yes<br />
说明 设定 samba server 是否要担当PDC角色(PDC会负责追踪网络帐户进行的一切变更),通常无特殊原因设为no.<br />
(同一网段内不可有两个PDC,他们会每5分钟抢主控权一次)</p>
<p>163行wins support<br />
语法 wins support = ;<br />
预设 wins support = yes<br />
说明 设定samba server 是否想网络提供WINS服务,通常无特殊原因设为no.<br />
除非所处网络上没有主机提供WINS服务且需要此台samba server提供WINS服务是才设yes<br />
其他 wins support 和 wins server 只能选择一个</p>
<p>167行wins server<br />
语法 wins server = ;<br />
预设 wins server = w.x.y.z<br />
说明 设定samba server 是否要使用别台主机提供的WINS服务.通常无特殊原因设为no.除非所处网络上有一台主机提供WINS服务才要设yes<br />
其他 wins support 和 wins server<br />
例 wins server = 192.168.0.1 表示samba server要使用192.168.0.1提供的WINS服务</p>
<p>#============================== Share Definitions =============================</p>
<p>[homes]<br />
comment = Home Directories<br />
browseable = no<br />
writable = yes<br />
valid users = %S</p>
<p>使用者本身的”家”目录，当使用者以samba使用者身份登入samba server 后，<br />
samba server 底下会看到自己的家目录，目录名称是使用者自己的帐号</p>
<p>[分享的资源名称]<br />
&lt;指令1&gt;; = (参数)<br />
&lt;指令2&gt;; = (参数)<br />
&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..</p>
<p>要提供分享资源时，须先把欲分享的资源以 [ ] 符号括住，底下通常会带指令和参数来表示此资源的设定和存取权限等,详情如下</p>
<p>comment&#8212;&#8212;&#8212;注释说明<br />
path&#8212;&#8212;&#8212;&#8212;分享资源的完整路径名称，除了路径要正确外，目录的权限也要设对<br />
browseable&#8212;&#8212;是yes/否no在浏览资源中显示共享目录，若为否则必须指定共享路径才能存取<br />
printable&#8212;&#8212;-是yes/否no允许打印<br />
hide dot ftles&#8211;是yes/否no隐藏隐藏文件<br />
public&#8212;&#8212;&#8212;-是yes/否no公开共享，若为否则进行身份验证(只有当security = share 时此项才起作用)<br />
guest ok&#8212;&#8212;&#8211;是yes/否no公开共享，若为否则进行身份验证(只有当security = share 时此项才起作用)<br />
read only&#8212;&#8212;-是yes/否no以只读方式共享当与writable发生冲突时也writable为准<br />
writable&#8212;&#8212;&#8211;是yes/否no不以只读方式共享当与read only发生冲突时，无视read only<br />
vaild users&#8212;&#8211;设定只有此名单内的用户才能访问共享资源(拒绝优先)(用户名/@组名)<br />
invalid users&#8212;设定只有此名单内的用户不能访问共享资源(拒绝优先)(用户名/@组名)<br />
read list&#8212;&#8212;-设定此名单内的成员为只读(用户名/@组名)<br />
write list&#8212;&#8212;若设定为只读时，则只有此设定的名单内的成员才可作写入动作(用户名/@组名)<br />
create mask&#8212;&#8211;建立文件时所给的权限<br />
directory mask&#8211;建立目录时所给的权限<br />
force group&#8212;&#8211;指定存取资源时须以此设定的群组使用者进入才能存取(用户名/@组名)<br />
force user&#8212;&#8212;指定存取资源时须以此设定的使用者进入才能存取(用户名/@组名)<br />
allow hosts&#8212;&#8211;设定只有此网段/IP的用户才能访问共享资源<br />
allwo hosts = 网段 except IP<br />
deny hosts&#8212;&#8212;设定只有此网段/IP的用户不能访问共享资源</p>
<p>allow hosts=本网段指定IP指定IP</p>
<p>deny hosts=指定IP本网段指定IP</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>MySQL：无法远程登入MySQL Server</p>
<p>尝试用MySQL Adminstrator GUI Tool登入MySQL Server，Server却回复错误讯息：Host &#8217;60-248-32-13.HINET-IP.hinet.net&#8217; is not allowed to connect to this<br />
MySQL server</p>
<p>这个是因为权限的问题，处理方式如下：<br />
shell&gt;mysql &#8211;user=root -p<br />
输入密码<br />
mysql&gt;use mysql<br />
mysql&gt;GRANT SELECT,INSERT,UPDATE,DELETE ON [db_name].* TO [username]@[ipadd] identified by &#8216;[password]&#8216;;</p>
<p>[username]:远程登入的使用者代码<br />
db_name]:表示欲开放给使用者的数据库称<br />
[password]:远程登入的使用者密码<br />
[ipadd]:IP地址或者IP反查后的DNS Name，此例的内容需填入&#8217;60-248-32-13.HINET-IP.hinet.net&#8217; ，包函上引号(&#8216;)</p>
<p>其实也可以直接使用grant all on&#8230;</p>
<p>（其实就是在远端服务器上执行，地址填写本地主机的ip地址。）</p>
<p>如果希望开放所有权限的话请执行：<br />
mysql&gt;update user set select_priv=&#8217;Y&#8217; , Insert_priv=&#8217;Y', Update_priv=&#8217;Y', delete_priv=&#8217;Y', Create_priv=&#8217;Y', Drop_priv=&#8217;Y',Reload_priv=&#8217;Y', shutdown_priv=&#8217;Y', Process_priv=&#8217;Y', File_priv=&#8217;Y', Grant_priv=&#8217;Y', references_priv=&#8217;Y',Index_priv=&#8217;Y', Alter_priv=&#8217;Y', Show_db_priv=&#8217;Y', Super_priv=&#8217;Y',Create_tmp_table_priv=&#8217;Y',Lock_tables_priv=&#8217;Y', Execute_priv=&#8217;Y',Repl_slave_priv=&#8217;Y',Repl_client_priv=&#8217;Y&#8217; where user=&#8217;[username]&#8216;;</p>
]]></content:encoded>
			<wfw:commentRss>http://finalbug.org/2008/09/918-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>学习FreeBSD － 初次探索</title>
		<link>http://finalbug.org/2007/11/%e5%ad%a6%e4%b9%a0freebsd-%ef%bc%8d-%e5%88%9d%e6%ac%a1%e6%8e%a2%e7%b4%a2-2/</link>
		<comments>http://finalbug.org/2007/11/%e5%ad%a6%e4%b9%a0freebsd-%ef%bc%8d-%e5%88%9d%e6%ac%a1%e6%8e%a2%e7%b4%a2-2/#comments</comments>
		<pubDate>Fri, 09 Nov 2007 08:23:00 +0000</pubDate>
		<dc:creator>Tang Bin</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[SVN]]></category>

		<guid isPermaLink="false">http://finalbug.cn/?p=101</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>一直都很想尝试将RIA的服务器移到FreeBSD上，因为工作原因，我现在有一个独立控制的服务器，除了不能从互联网上下载以外，其他都可以自由控制。于是我就有了一个尝试和学习FreeBSD的机会。</p>
<p>我安装的是6.2版本，虽然以前有一点点Liunx的经验，但是FreeBSD的上手还是费了我不少时间。在安装了3次系统以后，终于基本上算是上手了。。</p>
<p>现在我需要这个服务器需要提供SVN，apache＋PHP，FTP，mysql的服务。在此记录我的安装过程。<span id="more-2824"></span></p>
<p>1，SVN</p>
<p>其实FreeBSD6.2是自带SNV1.4.0版的服务器的。所以SVN就不需要安装了。</p>
<p>但是我遇到一个问题，使用svnserve启动了SVN以后，从别的机子一直都无法连接SVN，每次的错误都是“服务器积极拒绝”，在windows上安装SVN服务器的时候没有遇到这样的问题。但是在svnserve启动的时候加入&#8211;listen-host要求监听服务器的IP后，一切都正常了。奇怪，难道SVN默认监听localhost所以当在其他电脑上连接的时候会被拒绝？不清楚。但是问题是解决了。</p>
<p>另外一个问题，我没找到关闭SVN的方法，所以每次关闭SVN，我需要通过“ps x”命令罗列出所有进程和UID，然后找到svnserve的UID，使用kill -r UID来强制的关闭进程。不知道是不是应该有其他的方法呢？</p>
<p>2，mysql</p>
<p>mysql让我郁闷了很久，明明在安装系统的时候提到mysql应用的，为什么我就找到mysql被安装到哪儿了呢？后来才发现，FreeBSD系统带的是mysql应用，是client端的，而mysqld服务器，是要自己另外安装的。</p>
<p>因为没有办法通过port下载，所以我直接下载了mysql的package。我使用的是mysql5.0.45。</p>
<p>使用了无数次google以后，我在mysql的官网上找到了最直接的安装步骤：</p>
<p>shell&gt; <strong>pw groupadd mysql</strong><br />
shell&gt; <strong>pw useradd -g mysql mysql</strong><br />
shell&gt; <strong>cd /usr/local</strong><br />
shell&gt; <strong>gunzip &lt; /path/to/mysql-VERSION-OS.tar.gz | tar xvf -</strong><br />
shell&gt; <strong>ln -s full-path-to-mysql-VERSION-OS mysql</strong><br />
shell&gt; <strong>cd mysql</strong><br />
shell&gt; <strong>chown -R mysql .</strong><br />
shell&gt; <strong>chgrp -R mysql .</strong><br />
shell&gt; <strong>scripts/mysql_install_db &#8211;user=mysql</strong><br />
shell&gt; <strong>chown -R root .</strong><br />
shell&gt; <strong>chown -R mysql data</strong><br />
shell&gt; <strong>bin/mysqld_safe &#8211;user=mysql &amp;</strong></p>
<p>关于这个步骤的说明，现在大概已经比较清楚了， 有空的时候再来一一记下。</p>
<p>3，FTP</p>
<p>FreeBSD也自带了一个ftpd工具。虽然功能非常非常非常的弱，但是基本上能满足我内部使用的要求，所以暂时就不安装其他的了。ftpd有两个文件是用来设定权限的，一个是/etc/fptusers，里面罗列了所有不能通过ftp访问系统的用户名。另外一个是/etc/ftpchroot，里面罗列了所有将被锁定在根目录的用户名。ftpchroot文件默认是不存在的，因此需要自己手动建立一个。</p>
<p>这个自带的ftpd系统的目的是为了通过ftp协议方便系统的用户访问系统的文件。因此，每个新建的用户都有默认的ftp权限，可以其根目录是/home下的用户根目录，或者是其他设置的目录。</p>
<p>4，apache+php</p>
<p>Apache和PHP的安装我在网上找到了一个不错的教程，我完全按照这个教程操作，没有任何问题的安装并整合了apache和php。转贴教程如下：</p>
<blockquote><p>安装Apache要简单点,我这里安装的Apache版本是 httpd-2.0.50,去下载压缩包：<br />
<code></p>
<p>http://httpd.apache.org/download.cgi</p>
<p></code><br />
下载回来的包叫做 httpd-2.0.50.tar.gz 我们放在 /usr/local/src目录下。<br />
首先进入目录后解压缩：<br />
<code><br />
# cd /usr/local/src<br />
# tar -zxvf httpd-2.0.50.tar.gz<br />
</code><br />
然后就会得到 httpd-2.0.50目录,我们进入目录<br />
<code><br />
# cd httpd-2.0.50<br />
</code><br />
首先配置:<br />
<code><br />
# ./configure<br />
? --prefix=/usr/local/apache   #我们要把Apache安装在那个目录,我们这里装在 /usr/local/apache下<br />
? --enable-shared=max<br />
? --enable-module=rewrite<br />
? --enable-module=so<br />
</code><br />
执行上面的命令,如果没有错误信息,证明配置成功,然后进行编译:<br />
<code><br />
# make<br />
</code><br />
一两分钟就编译完了,然后进行安装:<br />
<code><br />
# make install<br />
</code><br />
安装完成后,Apache就存放在 /usr/local/apache目录下了, bin是执行文件的目录,conf是配置文件目录,htdocs是网页的主目录,logs是日志目录。<br />
Apache通过 bin/apachectl或者bin/httpd来控制启动或者停止.<br />
<code><br />
# /usr/local/apache/bin/httpd -k start #启动apache<br />
# /usr/local/apache/bin/httpd -k stop #停止apache<br />
# /usr/local/apache/bin/httpd -k restart #重启apache<br />
</code><br />
然后你可以通过 http://localhost 来测试apache是否安装成功,如果出现apache的页面则安装成功,否则请检查上面的步骤.</p>
<p><strong>安装PHP</strong></p>
<p>我们使用的PHP版本是4.3.8,先去下载: http://www.php.net/downloads.php, 下回来的包叫做 php-4.3.8.tar.gz, 放到/usr/local/src目录下.<br />
首先进入该目录后解压缩:<br />
<code><br />
# cd /usr/local/src<br />
# tar -zxvf php-4.3.8.tar.gz<br />
</code><br />
解压后进入目录:<br />
<code><br />
# cd php-4.3.8<br />
</code><br />
进行配置,这一步比较关键,一定要设置好,特别是要考虑到你要支持什么,比如GD库,xml,mysql等等,如果想知道详细的配置,执行 ./configure &#8211;help来获得:<br />
<code><br />
# ./configure<br />
? --with-apxs2=/usr/local/apache/bin/apxs<br />
? --disable-debug  #关闭php内部调试<br />
? --enable-safe-mode  #打开php的安全模式<br />
? --enable-trans-sid<br />
? --with-xml  #支持xml<br />
? --with-mysql  #支持mysql<br />
? --enable-short-tags  #支持PHP的短标记<br />
? --with-gd  #支持GD库<br />
? --with-zlib  #支持zlib<br />
? --with-jpeg<br />
? --with-png<br />
? --enable-memory-limit<br />
? --disable-posix<br />
? --with-config-file-path=/usr/local/lib<br />
</code><br />
如果上面的配置没有错误的话,那么应该最后会显示感谢使用PHP等字样,那么证明配置成功,如果上面的配置选项不支持的话,会提示错误.<br />
比如你没有安装mysql,那么&#8211;with-mysql就无法使用,所以一定要注意对应选项系统是否能够支持,如果出现错误,那么就先安装对应的程序,或</p>
<p>者去掉相关选项.<br />
配置之后就进行编译:<br />
<code><br />
# make<br />
</code><br />
编译成功后出现”Build complete.”字样,那么就可以进行安装了:<br />
<code><br />
# make install<br />
</code><br />
安装完成后把/usr/local/src/php-4.3.8/php.ini-dist复制到/usr/local/lib/，并重命名为php.ini<br />
<code><br />
# cp /usr/local/src/php-4.3.8/php.ini-dist /usr/local/lib/php.ini<br />
</code><br />
基本到这里PHP就安装成功了,如果中间出现错误,除了在配置的时候没有选对选项之后一般都不出现错误.</p>
<p><strong>整合Apache+PHP</strong></p>
<p>为了让Apache能够直接解析php,我们还要进行一些配置.<br />
首先进入apache的配置文件目录:<br />
<code><br />
# cd /usr/local/apache/conf<br />
</code><br />
然后用vi打开配置文件httpd.conf:<br />
<code><br />
# vi httpd.conf<br />
</code><br />
在httpd.conf文件中，添加<br />
<code><br />
AddType application/x-httpd-php .php<br />
AddType application/x-httpd-php-source .phps<br />
</code><br />
应该将以上两句添加在其他AddType之后。</p>
<p>确保文件中有以下一句话，没有就自己添加在所有LoadModule之后。<br />
<code><br />
LoadModule php4_module  modules/libphp4.so<br />
</code><br />
好了,在vi中使用”:wq”保存httpd.conf文件，退出vi。启动apache server:<br />
<code><br />
# /usr/local/apache/bin/httpd start<br />
</code></p>
<p>现在apache就能够运行php了,写个文件测试一下,在/usr/local/apache/htdocs目录下，新建一个phpinfo.php文件，<br />
文件中只有一行代码:<br />
<code><br />
&lt;? phpinfo(); ?&gt;;<br />
</code><br />
保存此文件, 在你的浏览器中输入http://localhost/phpinfo.php，你应该看到PHP的系统信息。<br />
如果出现错误,比如提示你下灾phpinfo.php,那么apache就是还无法解析php文件,那么请仔细检查以上的操作是否正确.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://finalbug.org/2007/11/%e5%ad%a6%e4%b9%a0freebsd-%ef%bc%8d-%e5%88%9d%e6%ac%a1%e6%8e%a2%e7%b4%a2-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

