<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_点滴积累,融会贯通</title><subtitle type="text">-----喜欢一切有兴趣的东西</subtitle><id>http://feed.cnblogs.com/blog/u/12648/rss</id><updated>2011-12-23T06:38:24Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/12648/rss"/><entry><id>http://www.cnblogs.com/xh831213/archive/2011/12/23/2299408.html</id><title type="text">通用错误处理</title><summary type="text">通用错误处理</summary><published>2011-12-23T06:38:00Z</published><updated>2011-12-23T06:38:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/12/23/2299408.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/12/23/2299408.html"/><content type="html">&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&#xD;
&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;class&lt;/span&gt;&amp;nbsp;BizException&amp;nbsp;:&amp;nbsp;Exception&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;BizException()&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&#xD;
&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;BizException(BizExceptionType&amp;nbsp;o)&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Utility.GeneralLog(o.ToString());&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;myType&amp;nbsp;=&amp;nbsp;o;&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&#xD;
&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;private&lt;/span&gt;&amp;nbsp;BizExceptionType&amp;nbsp;myType&amp;nbsp;=&amp;nbsp;BizExceptionType.DefaultException;&lt;br /&gt;&#xD;
&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;BizExceptionType&amp;nbsp;MyType&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;get&lt;/span&gt;&amp;nbsp;{&amp;nbsp;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&amp;nbsp;myType;&amp;nbsp;}&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;set&lt;/span&gt;&amp;nbsp;{&amp;nbsp;myType&amp;nbsp;=&amp;nbsp;value;&amp;nbsp;}&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/div&gt;&#xD;
&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;enum&lt;/span&gt;&amp;nbsp;BizExceptionType&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DefaultException,&amp;nbsp;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;default&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;}&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;span style="color: #0000FF;"&gt;throw&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&amp;nbsp;BizException(BizExceptionType.DefaultException);&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;try&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;catch&lt;/span&gt;&amp;nbsp;(BizException&amp;nbsp;ex)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;log.Error(ex.MyType.ToString());&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;throw&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&amp;nbsp;SoapException(ex.MyType.ToString(),&amp;nbsp;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&amp;nbsp;System.Xml.XmlQualifiedName(ex.MyType.ToString()));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;catch&lt;/span&gt;&amp;nbsp;(Exception&amp;nbsp;ex)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;log.Error(ex.ToString());&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;throw&lt;/span&gt;&amp;nbsp;ex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/2299408.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/12/23/2299408.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2011/10/13/2210194.html</id><title type="text">Mysql的安全设置</title><summary type="text">Mysql的安全设置</summary><published>2011-10-13T05:34:00Z</published><updated>2011-10-13T05:34:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/10/13/2210194.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/10/13/2210194.html"/><content type="html">&lt;div&gt;  &lt;p&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;Mysql&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;的安全设置&lt;span&gt; &lt;br /&gt; &lt;br /&gt; &lt;/span&gt;我们把Mysql安装在 /usr/local/mysql目录下，我们必须建立一个用户名为mysql，组为mysql的用户来运行我们的mysql，同时我们把它的配置文件拷贝到 /etc目录下：&lt;span&gt; &lt;br /&gt; # cp suport-files/my-medium.cnf /etc/my.cnf &lt;br /&gt; chown root:sys /etc/my.cnf &lt;br /&gt; chmod 644 /etc/my.cnf &lt;br /&gt; &lt;br /&gt; &lt;/span&gt;使用用户mysql来启动我们的&lt;span&gt;mysql: &lt;br /&gt; # /usr/local/mysql/bin/mysqld_safe -user=mysql &amp;amp; &lt;br /&gt; &lt;br /&gt; (1) &lt;/span&gt;修改root用户的的口令&lt;span&gt; &lt;br /&gt; &lt;/span&gt;缺省安装的mysql是没有密码的，所以我们要修改，以防万一。下面采用三种方式来修改root的口令。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; * &lt;/span&gt;用mysqladmin命令来改root用户口令&lt;span&gt; &lt;br /&gt; &lt;/span&gt;＃&lt;span&gt; mysqladmin -uroot password test &lt;br /&gt; &lt;/span&gt;这样，MySQL数据库root用户的口令就被改成test了。（test只是举例，我们实际使用的口令一定不能使用这种易猜的弱口令）&lt;span&gt; &lt;br /&gt; &lt;br /&gt; * &lt;/span&gt;用set password修改口令：&lt;span&gt; &lt;br /&gt; mysql&amp;gt; set password for root@localhost=password('test'); &lt;br /&gt; &lt;/span&gt;这时root用户的口令就被改成test了。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; * &lt;/span&gt;直接修改user表的root用户口令&lt;span&gt; &amp;nbsp; &lt;br /&gt; mysql&amp;gt; use mysql; &lt;br /&gt; mysql&amp;gt; update user set password=password('test') where user='root'; &lt;br /&gt; mysql&amp;gt; flush privileges; &lt;br /&gt; &lt;br /&gt; &lt;/span&gt;这样，MySQL数据库root用户的口令也被改成test了。其中最后一句命令flush privileges的意思是强制刷新内存授权表，否则用的还是缓冲中的口令，这时非法用户还可以用root用户及空口令登陆，直到重启MySQL服务器。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; (2) &lt;/span&gt;删除默认的数据库和用户&lt;span&gt; &lt;br /&gt; &lt;/span&gt;我们的数据库是在本地，并且也只需要本地的php脚本对mysql进行读取，所以很多用户不需要。mysql初始化后会自动生成空用户和test库，这会对数据库构成威胁，我们全部删除。&lt;span&gt; &lt;br /&gt; &lt;/span&gt;我们使用mysql客户端程序连接到本地的mysql服务器后出现如下提示：&lt;span&gt; &lt;br /&gt; mysql&amp;gt; drop database test; &lt;br /&gt; mysql&amp;gt; use mysql; &lt;br /&gt; mysql&amp;gt; delete from db; &lt;br /&gt; mysql&amp;gt; delete from user where not(host="localhost" and user="root"); &lt;br /&gt; mysql&amp;gt; flush privileges; &lt;br /&gt; &lt;br /&gt; (3) &lt;/span&gt;改变默认mysql管理员的名称&lt;span&gt; &lt;br /&gt; &lt;/span&gt;这个工作是可以选择的，根据个人习惯，因为默认的mysql的管理员名称是root，所以如果能够修改的话，能够防止一些脚本小子对系统的穷举。我们可以直接修改数据库，把root用户改为&lt;span&gt;"admin" &lt;br /&gt; mysql&amp;gt; use mysql; &lt;br /&gt; mysql&amp;gt; update user set user="admin" where user="root"; &lt;br /&gt; mysql&amp;gt; flush privileges; &lt;br /&gt; &lt;br /&gt; (4) &lt;/span&gt;提高本地安全性&lt;span&gt; &lt;br /&gt; &lt;/span&gt;提高本地安全性，主要是防止mysql对本地文件的存取，比如黑客通过mysql把/etc/passwd获取了，会对系统构成威胁。mysql对本地文件的存取是通过SQL语句来实现，主要是通过Load DATA LOCAL INFILE来实现，我们能够通过禁用该功能来防止黑客通过SQL注射等获取系统核心文件。&lt;span&gt; &lt;br /&gt; &lt;/span&gt;禁用该功能必须在 my.cnf 的[mysqld]部分加上一个参数：&lt;span&gt; &lt;br /&gt; set-variable=local-infile=0 &lt;br /&gt; &lt;br /&gt; (5) &lt;/span&gt;禁止远程连接&lt;span&gt;mysql &lt;br /&gt; &lt;/span&gt;因为我们的mysql只需要本地的php脚本进行连接，所以我们无需开socket进行监听，那么我们完全可以关闭监听的功能。&lt;span&gt; &lt;br /&gt; &lt;/span&gt;有两个方法实现：&lt;span&gt; &lt;br /&gt; * &lt;/span&gt;配置my.cnf文件，在[mysqld]部分添加 skip-networking 参数&lt;span&gt; &lt;br /&gt; * mysqld&lt;/span&gt;服务器中参数中添加 --skip-networking 启动参数来使mysql不监听任何TCP/IP连接，增加安全性。如果要进行mysql的管理的话&lt;/span&gt;&lt;span style="font-size:12.0pt; font-family:宋体;Times New Roman&amp;quot;;"&gt;,&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family: 宋体;"&gt;可以在服务器本地安装一个phpMyadmin来进行管理。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; (6) &lt;/span&gt;控制数据库访问权限&lt;span&gt; &lt;br /&gt; &lt;/span&gt;对于使用php脚本来进行交互，最好建立一个用户只针对某个库有&lt;span&gt; update&lt;/span&gt;、select、delete、insert、drop table、&lt;span&gt;create table&lt;/span&gt;等权限，这样就很好避免了数据库用户名和密码被黑客查看后最小损失。&lt;span&gt; &lt;br /&gt; &lt;/span&gt;比如下面我们创建一个数据库为db1，同时建立一个用户test1能够访问该数据库。&lt;span&gt; &lt;br /&gt; mysql&amp;gt; create database db1; &lt;br /&gt; mysql&amp;gt; grant select,insert,update,delete,create,drop privileges on db1.* to test1@localhost identified by 'admindb'; &lt;br /&gt; &lt;/span&gt;以上SQL是创建一个数据库db1，同时增加了一个test1用户，口令是admindb，但是它只能从本地连接mysql，对db1库有select,insert,update,delete,create,drop操作权限。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; (7) &lt;/span&gt;限制一般用户浏览其他用户数据库&lt;span&gt; &lt;br /&gt; &lt;/span&gt;如果有多个数据库，每个数据库有一个用户，那么必须限制用户浏览其他数据库内容，可以在启动MySQL服务器时加--skip-show-database 启动参数就能够达到目的。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; ( &lt;/span&gt;忘记mysql密码的解决办法&lt;span&gt; &lt;br /&gt; &lt;/span&gt;如果不慎忘记了MySQL的root密码，我们可以在启动MySQL服务器时加上参数--skip-grant-tables来跳过授权表的验证 (./safe_mysqld --skip-grant-tables &amp;amp;)，这样我们就可以直接登陆MySQL服务器，然后再修改root用户的口令，重启MySQL就可以用新口令登陆了。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; (9) &lt;/span&gt;数据库文件的安全&lt;span&gt; &lt;br /&gt; &lt;/span&gt;我们默认的mysql是安装在/usr/local/mysql目录下的，那么对应的数据库文件就是在/usr/local/mysql/var目录下，那么我们要保证该目录不能让未经授权的用户访问后把数据库打包拷贝走了，所以要限制对该目录的访问。&lt;span&gt; &lt;br /&gt; &lt;/span&gt;我们修改该目录的所属用户和组是mysql，同时改变访问权限：&lt;span&gt; &lt;br /&gt; # chown -R mysql.mysql /usr/local/mysql/var &lt;br /&gt; # chmod -R go-rwx /usr/local/mysql/var &lt;br /&gt; &lt;br /&gt; (10) &lt;/span&gt;删除历史记录&lt;span&gt; &lt;br /&gt; &lt;/span&gt;执行以上的命令会被shell记录在历史文件里，比如bash会写入用户目录的.bash_history文件，如果这些文件不慎被读，那么数据库的密码就会泄漏。用户登陆数据库后执行的SQL命令也会被MySQL记录在用户目录的.mysql_history文件里。如果数据库用户用SQL语句修改了数据库密码，也会因.mysql_history文件而泄漏。所以我们在shell登陆及备份的时候不要在-p后直接加密码，而是在提示后再输入数据库密码。&lt;span&gt; &lt;br /&gt; &lt;/span&gt;另外这两个文件我们也应该不让它记录我们的操作，以防万一。&lt;span&gt; &lt;br /&gt; # rm .bash_history .mysql_history &lt;br /&gt; # ln -s /dev/null .bash_history &lt;br /&gt; # ln -s /dev/null .mysql_history &lt;br /&gt; &lt;br /&gt; (11) &lt;/span&gt;其他&lt;span&gt; &lt;br /&gt; &lt;/span&gt;另外还可以考虑使用chroot等方式来控制mysql的运行目录，更好的控制权限，具体可以参考相关文章。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; 4. vsFTPd&lt;/span&gt;安全设置&lt;span&gt; &lt;br /&gt; &lt;br /&gt; vsFTPd&lt;/span&gt;是一款非常著名的ftp daemon程序，目前包括Redhat.com在内很多大公司都在使用，它是一款非常安全的程序，因为它的名字就叫：Very Secure FTP Daemon (非常安全的FTP服务器)。&lt;span&gt; &lt;br /&gt; vsftpd&lt;/span&gt;设置选项比较多，涉及方方面面，我们下面主要是针对安全方面进行设置。&lt;span&gt; &lt;br /&gt; &lt;/span&gt;目前我们的需求就是使用系统帐户同时也作为是我们的FTP帐户来进行我们文件的管理，目前假设我只需要一个帐户来更新我的网站，并且我不希望该帐户能够登陆我们的系统，比如我们的网站的目录是在/usr/www下面，那么我们新建一个用户ftp，它的主目录是/usr/www，并且它的shell是/usr/sbin/nologin，就是没有shell，防止该用户通过ssh等登陆到系统。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; &lt;/span&gt;下面在进行系统详尽的设置，主要就是针对vsftpd的配置文件vsftpd.conf文件的配置。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; (1) &lt;/span&gt;禁止匿名用户访问, 我们不需要什么匿名用户，直接禁止掉：&lt;span&gt; &lt;br /&gt; anonymous_enable=NO &lt;br /&gt; &lt;br /&gt; (2) &lt;/span&gt;允许本地用户登陆，因为我们需要使用ftp用户来对我们网站进行管理&lt;span&gt;: &lt;br /&gt; local_enable=YES &lt;br /&gt; &lt;br /&gt; (3) &lt;/span&gt;只允许系统中的ftp用户或者某些指定的用户访问ftp，因为系统中帐户众多，不可能让谁都访问。 &lt;span&gt;&lt;br /&gt; &lt;/span&gt;打开用户文件列表功能：&lt;span&gt; &lt;br /&gt; userlist_enable=YES &lt;br /&gt; &lt;/span&gt;只允许用户文件列表中的用户访问&lt;span&gt;ftp: &lt;br /&gt; userlist_deny=NO &lt;br /&gt; &lt;/span&gt;用户名文件列表路径：&lt;span&gt; &lt;br /&gt; userlist_file=/etc/vsftpd.user_list &lt;br /&gt; &lt;br /&gt; &lt;/span&gt;然后在/etc下建立文件 vsftpd.user_list 文件，一行一个，把用户ftp加进去，同时也可以加上你允许访问的系统帐户名。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; (4) &lt;/span&gt;禁止某些用户登陆&lt;span&gt;ftp: &lt;br /&gt; pam_service_name=vsftpd &lt;br /&gt; &lt;/span&gt;指出VSFTPD进行PAM认证时所使用的PAM配置文件名，默认值是vsftpd，默认PAM配置文件是/etc/pam.d/vsftpd。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; /etc/vsftpd.ftpusers &lt;br /&gt; VSFTPD&lt;/span&gt;禁止列在此文件中的用户登录FTP服务器，用户名是一行一个。这个机制是在/etc/pam.d/vsftpd中默认设置的。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; &lt;/span&gt;这个功能和(3)里的功能有点类似，他们俩能结合使用，那样就最好了。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; (5) &lt;/span&gt;把本地用户锁定在自己的主目录，防止转到其他目录，比如把/etc/passwd给下载了&lt;span&gt;: &lt;br /&gt; chroot_local_users=NO &lt;br /&gt; chroot_list_enable=YES &lt;br /&gt; chroot_list_file=/etc/vsftpd.chroot_list &lt;br /&gt; &lt;/span&gt;然后在/etc下建立vsftpd.chroot_list文件，里面把我们要限制的本地帐户加进去，一行一个，我们加上ftp，防止它登陆到系统。&lt;span&gt; &lt;br /&gt; &lt;br /&gt; (6) &lt;/span&gt;隐藏文件真实的所有用户和组信息，防止黑客拿下ftp后查看更多系统用户信息：&lt;span&gt; &lt;br /&gt; hide_ids=YES &lt;br /&gt; &lt;br /&gt; (7) &lt;/span&gt;取消ls -R命令，节省资源，因为使用该命令，在文件列表很多的时候将浪费大量系统资源：&lt;span&gt; &lt;br /&gt; ls_recurse_enable=NO &lt;br /&gt; &lt;br /&gt; ( &lt;/span&gt;上传文件的默认权限，设置为022：&lt;span&gt; &lt;br /&gt; local_umask=022 &lt;br /&gt; &lt;/span&gt;如果要覆盖删除等，还要打开：&lt;span&gt; &lt;br /&gt; write_enable=YES &lt;br /&gt; &lt;br /&gt; (9) ftp&lt;/span&gt;的banner信息，为了防止黑客获取更多服务器的信息，设置该项：&lt;span&gt; &lt;br /&gt; ftpd_banner=banner string &lt;br /&gt; &lt;/span&gt;把后面的banner string设为你需要的banner提示信息，为了安全，建议不要暴露关于vsFTPd的任何信息。&lt;span&gt; &lt;br /&gt; &lt;/span&gt;另外，如果你的信息比较多的话，可以设置为提示信息是读取一个文件中的信息：&lt;span&gt; &lt;br /&gt; banner_file=/directory/vsftpd_banner_file &lt;br /&gt; &lt;br /&gt; (10) &lt;/span&gt;打开日志功能：&lt;span&gt; &lt;br /&gt; xferlog_enable=YES &lt;br /&gt; &lt;/span&gt;同时设置日志的目录：&lt;span&gt; &lt;br /&gt; xferlog_file=/var/log/vsftpd.log &lt;br /&gt; &lt;/span&gt;启用详细的日志记录格式：&lt;span&gt; &lt;br /&gt; xferlog_enable=YES &lt;br /&gt; &lt;br /&gt; (11) &lt;/span&gt;如果打开虚用户功能等，那么建议关闭本地用户登陆：&lt;span&gt; &lt;br /&gt; local_enable=NO &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; vsFTPd&lt;/span&gt;还有很多安全设置，毕竟人家的名字就是：Very Secure FTP Daemon，反正它的溢出漏洞什么的是很少的，如果要更安全，建议按照自己的需要设置vsftpd，设置的好，它绝对是最安全的。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/2210194.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/10/13/2210194.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2011/10/12/2208095.html</id><title type="text">Linux和Windows下查看环境变量方法</title><summary type="text">一、查看所有环境变量的名称和值二、根据名称查该环境变量的值三、设置环境变量</summary><published>2011-10-12T00:57:00Z</published><updated>2011-10-12T00:57:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/10/12/2208095.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/10/12/2208095.html"/><content type="html">&lt;div&gt;&lt;strong&gt;一、查看所有环境变量的名称和值：&lt;/strong&gt; &lt;p&gt;Linux下：export&lt;/p&gt; &lt;p&gt;Windows下：set&lt;/p&gt; &lt;p&gt;&lt;strong&gt;二、根据名称查该环境变量的值：&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Linux下：echo $环境变量名&lt;/p&gt; &lt;p&gt;如：echo $ORACLE_HOME&lt;/p&gt; &lt;p&gt;Windows下：set环境变量名&lt;/p&gt; &lt;p&gt;如：set $ORACLE_HOME&lt;/p&gt; &lt;p&gt;&lt;strong&gt;三、设置环境变量：&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Linux下：export环境变量名=值&lt;/p&gt; &lt;p&gt;如：$export ORACLE_HOME=/home/oracle/product/10.2.0&lt;/p&gt; &lt;p&gt;Windows下：set环境变量名=值&lt;/p&gt; &lt;p&gt;如：&amp;gt;set Path=d:\oracle\product\10.2.0\client_1\bin&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/2208095.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/10/12/2208095.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2011/09/22/2184831.html</id><title type="text">mysql 命令</title><summary type="text">mysql 命令mysql -h主机地址 -u用户名 －p用户密码source xxxxx.sql</summary><published>2011-09-22T02:57:00Z</published><updated>2011-09-22T02:57:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/09/22/2184831.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/09/22/2184831.html"/><content type="html">&lt;div&gt;一、连接MYSQL。&lt;br /&gt;格式：&amp;nbsp;mysql&amp;nbsp;-h主机地址&amp;nbsp;-u用户名&amp;nbsp;－p用户密码&lt;br /&gt;1、连接到本机上的MYSQL。&lt;br /&gt;首先打开DOS窗口，然后进入目录mysql\bin，再键入命令mysql&amp;nbsp;-u&amp;nbsp;root&amp;nbsp;-p，回车后提示你输密码.注意用户名前可以有空格也可以没有空格，但是密码前必须没有空格，否则让你重新输入密码.&lt;br /&gt;如果刚安装好MYSQL，超级用户root是没有密码的，故直接回车即可进入到MYSQL中了，MYSQL的提示符是：&amp;nbsp;mysql&amp;gt;&lt;br /&gt;2、连接到远程主机上的MYSQL。假设远程主机的IP为：110.110.110.110，用户名为root,密码为abcd123。则键入以下命令：&lt;br /&gt;mysql&amp;nbsp;-h110.110.110.110&amp;nbsp;-u&amp;nbsp;root&amp;nbsp;-p&amp;nbsp;123;（注:u与root之间可以不用加空格，其它也一样）&lt;br /&gt;3、退出MYSQL命令：&amp;nbsp;exit&amp;nbsp;（回车）&lt;br /&gt;二、修改密码。&lt;br /&gt;格式：mysqladmin&amp;nbsp;-u用户名&amp;nbsp;-p旧密码&amp;nbsp;password&amp;nbsp;新密码&lt;br /&gt;1、给root加个密码ab12。首先在DOS下进入目录mysql\bin，然后键入以下命令&lt;br /&gt;mysqladmin&amp;nbsp;-u&amp;nbsp;root&amp;nbsp;-password&amp;nbsp;ab12&lt;br /&gt;注：因为开始时root没有密码，所以-p旧密码一项就可以省略了。&lt;br /&gt;2、再将root的密码改为djg345。&lt;br /&gt;mysqladmin&amp;nbsp;-u&amp;nbsp;root&amp;nbsp;-p&amp;nbsp;ab12&amp;nbsp;password&amp;nbsp;djg345&lt;br /&gt;三、增加新用户。&lt;br /&gt;（注意：和上面不同，下面的因为是MYSQL环境中的命令，所以后面都带一个分号作为命令结束符）&lt;br /&gt;格式：grant&amp;nbsp;select&amp;nbsp;on&amp;nbsp;数据库.*&amp;nbsp;to&amp;nbsp;用户名@登录主机&amp;nbsp;identified&amp;nbsp;by&amp;nbsp;&amp;#8220;密码&amp;#8221;&lt;br /&gt;1、增加一个用户test1密码为abc，让他可以在任何主机上登录，并对所有数据库有查询、插入、修改、删除的权限。首先用root用户连入MYSQL，然后键入以下命令：&lt;br /&gt;grant&amp;nbsp;select,insert,update,delete&amp;nbsp;on&amp;nbsp;*.*&amp;nbsp;to&amp;nbsp;[email=test1@&amp;#8221;%]test1@&amp;#8221;%[/email]&amp;#8221;&amp;nbsp;Identified&amp;nbsp;by&amp;nbsp;&amp;#8220;abc&amp;#8221;;&lt;br /&gt;但增加的用户是十分危险的，你想如某个人知道test1的密码，那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了，解决办法见2。&lt;br /&gt;2、增加一个用户test2密码为abc,让他只可以在localhost上登录，并可以对数据库mydb进行查询、插入、修改、删除的操作（localhost指本地主机，即MYSQL数据库所在的那台主机），&lt;br /&gt;这样用户即使用知道test2的密码，他也无法从internet上直接访问数据库，只能通过MYSQL主机上的web页来访问了。&lt;br /&gt;grant&amp;nbsp;select,insert,update,delete&amp;nbsp;on&amp;nbsp;mydb.*&amp;nbsp;to&amp;nbsp;[email=test2@localhost]test2@localhost[/email]&amp;nbsp;identified&amp;nbsp;by&amp;nbsp;&amp;#8220;abc&amp;#8221;;&lt;br /&gt;如果你不想test2有密码，可以再打一个命令将密码消掉。&lt;br /&gt;grant&amp;nbsp;select,insert,update,delete&amp;nbsp;on&amp;nbsp;mydb.*&amp;nbsp;to&amp;nbsp;[email=test2@localhost]test2@localhost[/email]&amp;nbsp;identified&amp;nbsp;by&amp;nbsp;&amp;#8220;&amp;#8221;;&lt;br /&gt;下篇我是MYSQL中有关数据库方面的操作。注意：你必须首先登录到MYSQL中，以下操作都是在MYSQL的提示符下进行的，而且每个命令以分号结束。&lt;br /&gt;一、操作技巧&lt;br /&gt;1、如果你打命令时，回车后发现忘记加分号，你无须重打一遍命令，只要打个分号回车就可以了。&lt;br /&gt;也就是说你可以把一个完整的命令分成几行来打，完后用分号作结束标志就OK。&lt;br /&gt;2、你可以使用光标上下键调出以前的命令。&lt;br /&gt;二、显示命令&lt;br /&gt;1、显示当前数据库服务器中的数据库列表：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;SHOW&amp;nbsp;DATABASES;&lt;br /&gt;注意：mysql库里面有MYSQL的系统信息，我们改密码和新增用户，实际上就是用这个库进行操作。&lt;br /&gt;2、显示数据库中的数据表：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;USE&amp;nbsp;库名；&lt;br /&gt;mysql&amp;gt;&amp;nbsp;SHOW&amp;nbsp;TABLES;&lt;br /&gt;3、显示数据表的结构：&lt;/div&gt;&lt;div&gt;mysql&amp;gt;&amp;nbsp;DESCRIBE&amp;nbsp;表名;&lt;br /&gt;4、建立数据库：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;CREATE&amp;nbsp;DATABASE&amp;nbsp;库名;&lt;br /&gt;5、建立数据表：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;USE&amp;nbsp;库名;&lt;br /&gt;mysql&amp;gt;&amp;nbsp;CREATE&amp;nbsp;TABLE&amp;nbsp;表名&amp;nbsp;(字段名&amp;nbsp;VARCHAR(20),&amp;nbsp;字段名&amp;nbsp;CHAR(1));&lt;br /&gt;6、删除数据库：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;DROP&amp;nbsp;DATABASE&amp;nbsp;库名;&lt;br /&gt;7、删除数据表：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;DROP&amp;nbsp;TABLE&amp;nbsp;表名；&lt;br /&gt;8、将表中记录清空：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;DELETE&amp;nbsp;FROM&amp;nbsp;表名;&lt;br /&gt;9、显示表中的记录：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;SELECT&amp;nbsp;*&amp;nbsp;FROM&amp;nbsp;表名;&lt;br /&gt;10、往表中插入记录：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;INSERT&amp;nbsp;INTO&amp;nbsp;表名&amp;nbsp;VALUES&amp;nbsp;(&amp;#8221;hyq&amp;#8221;,&amp;#8221;M&amp;#8221;);&lt;br /&gt;11、更新表中数据：&lt;br /&gt;mysql-&amp;gt;&amp;nbsp;UPDATE&amp;nbsp;表名&amp;nbsp;SET&amp;nbsp;字段名1=&amp;#8217;a',字段名2=&amp;#8217;b&amp;#8217;&amp;nbsp;WHERE&amp;nbsp;字段名3=&amp;#8217;c';&lt;br /&gt;12、用文本方式将数据装入数据表中：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;LOAD&amp;nbsp;DATA&amp;nbsp;LOCAL&amp;nbsp;INFILE&amp;nbsp;&amp;#8220;D:/mysql.txt&amp;#8221;&amp;nbsp;INTO&amp;nbsp;TABLE&amp;nbsp;表名;&lt;br /&gt;13、导入.sql文件命令：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;USE&amp;nbsp;数据库名;&lt;br /&gt;mysql&amp;gt;&amp;nbsp;SOURCE&amp;nbsp;d:/mysql.sql;&lt;br /&gt;14、命令行修改root密码：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;UPDATE&amp;nbsp;mysql.user&amp;nbsp;SET&amp;nbsp;password=PASSWORD(&amp;#8217;新密码&amp;#8217;)&amp;nbsp;WHERE&amp;nbsp;User=&amp;#8217;root&amp;#8217;;&lt;br /&gt;mysql&amp;gt;&amp;nbsp;FLUSH&amp;nbsp;PRIVILEGES;&lt;br /&gt;15、显示use的数据库名：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;SELECT&amp;nbsp;DATABASE();&lt;br /&gt;16、显示当前的user：&lt;br /&gt;mysql&amp;gt;&amp;nbsp;SELECT&amp;nbsp;USER();&lt;br /&gt;三、一个建库和建表以及插入数据的实例&lt;br /&gt;drop&amp;nbsp;database&amp;nbsp;if&amp;nbsp;exists&amp;nbsp;school;&amp;nbsp;//如果存在SCHOOL则删除&lt;br /&gt;create&amp;nbsp;database&amp;nbsp;school;&amp;nbsp;//建立库SCHOOL&lt;br /&gt;use&amp;nbsp;school;&amp;nbsp;//打开库SCHOOL&lt;br /&gt;create&amp;nbsp;table&amp;nbsp;teacher&amp;nbsp;//建立表TEACHER&lt;br /&gt;(&lt;br /&gt;id&amp;nbsp;int(3)&amp;nbsp;auto_increment&amp;nbsp;not&amp;nbsp;null&amp;nbsp;primary&amp;nbsp;key,&lt;br /&gt;name&amp;nbsp;char(10)&amp;nbsp;not&amp;nbsp;null,&lt;br /&gt;address&amp;nbsp;varchar(50)&amp;nbsp;default&amp;nbsp;&amp;#8216;深圳&amp;#8217;,&lt;br /&gt;year&amp;nbsp;date&lt;br /&gt;);&amp;nbsp;//建表结束&lt;br /&gt;//以下为插入字段&lt;br /&gt;insert&amp;nbsp;into&amp;nbsp;teacher&amp;nbsp;values(&amp;#8221;,&amp;#8217;allen&amp;#8217;,'大连一中&amp;#8217;,'1976-10-10&amp;#8242;);&lt;br /&gt;insert&amp;nbsp;into&amp;nbsp;teacher&amp;nbsp;values(&amp;#8221;,&amp;#8217;jack&amp;#8217;,'大连二中&amp;#8217;,'1975-12-23&amp;#8242;);&lt;br /&gt;如果你在mysql提示符键入上面的命令也可以，但不方便调试。&lt;br /&gt;（1）你可以将以上命令原样写入一个文本文件中，假设为school.sql，然后复制到c:\\下，并在DOS状态进入目录[url=file://\\mysql\\bin]\\mysql\\bin[/url]，然后键入以下命令：&lt;br /&gt;mysql&amp;nbsp;-uroot&amp;nbsp;-p密码&amp;nbsp;&amp;lt;&amp;nbsp;c:\\school.sql&lt;br /&gt;如果成功，空出一行无任何显示；如有错误，会有提示。（以上命令已经调试，你只要将//的注释去掉即可使用）。&lt;br /&gt;（2）或者进入命令行后使用&amp;nbsp;mysql&amp;gt;&amp;nbsp;source&amp;nbsp;c:\\school.sql;&amp;nbsp;也可以将school.sql文件导入数据库中。&lt;br /&gt;四、将文本数据转到数据库中&lt;br /&gt;1、文本数据应符合的格式：字段数据之间用tab键隔开，null值用[url=file://\\n]\\n[/url]来代替.例：&lt;br /&gt;3&amp;nbsp;rose&amp;nbsp;大连二中&amp;nbsp;1976-10-10&lt;br /&gt;4&amp;nbsp;mike&amp;nbsp;大连一中&amp;nbsp;1975-12-23&lt;br /&gt;假设你把这两组数据存为school.txt文件，放在c盘根目录下。&lt;br /&gt;2、数据传入命令&amp;nbsp;load&amp;nbsp;data&amp;nbsp;local&amp;nbsp;infile&amp;nbsp;&amp;#8220;c:\\school.txt&amp;#8221;&amp;nbsp;into&amp;nbsp;table&amp;nbsp;表名;&lt;br /&gt;注意：你最好将文件复制到[url=file://\\mysql\\bin]\\mysql\\bin[/url]目录下，并且要先用use命令打表所在的库。&lt;br /&gt;五、备份数据库：（命令在DOS的[url=file://\\mysql\\bin]\\mysql\\bin[/url]目录下执行）&lt;br /&gt;1.导出整个数据库&lt;br /&gt;导出文件默认是存在mysql\bin目录下&lt;br /&gt;mysqldump&amp;nbsp;-u&amp;nbsp;用户名&amp;nbsp;-p&amp;nbsp;数据库名&amp;nbsp;&amp;gt;&amp;nbsp;导出的文件名&lt;br /&gt;mysqldump&amp;nbsp;-u&amp;nbsp;user_name&amp;nbsp;-p123456&amp;nbsp;database_name&amp;nbsp;&amp;gt;&amp;nbsp;outfile_name.sql&lt;br /&gt;2.导出一个表&lt;br /&gt;mysqldump&amp;nbsp;-u&amp;nbsp;用户名&amp;nbsp;-p&amp;nbsp;数据库名&amp;nbsp;表名&amp;gt;&amp;nbsp;导出的文件名&lt;br /&gt;mysqldump&amp;nbsp;-u&amp;nbsp;user_name&amp;nbsp;-p&amp;nbsp;database_name&amp;nbsp;table_name&amp;nbsp;&amp;gt;&amp;nbsp;outfile_name.sql&lt;br /&gt;3.导出一个数据库结构&lt;br /&gt;mysqldump&amp;nbsp;-u&amp;nbsp;user_name&amp;nbsp;-p&amp;nbsp;-d&amp;nbsp;&amp;#8211;add-drop-table&amp;nbsp;database_name&amp;nbsp;&amp;gt;&amp;nbsp;outfile_name.sql&lt;br /&gt;-d&amp;nbsp;没有数据&amp;nbsp;&amp;#8211;add-drop-table&amp;nbsp;在每个create语句之前增加一个drop&amp;nbsp;table&lt;br /&gt;4.带语言参数导出&lt;br /&gt;mysqldump&amp;nbsp;-uroot&amp;nbsp;-p&amp;nbsp;&amp;#8211;default-character-set=latin1&amp;nbsp;&amp;#8211;set-charset=gbk&amp;nbsp;&amp;#8211;skip-opt&amp;nbsp;database_name&amp;nbsp;&amp;gt;&amp;nbsp;outfile_name.sql&lt;/div&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/2184831.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/09/22/2184831.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2011/09/22/2184826.html</id><title type="text">MySql远程连接的设置</title><summary type="text">MySql远程连接的设置</summary><published>2011-09-22T02:54:00Z</published><updated>2011-09-22T02:54:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/09/22/2184826.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/09/22/2184826.html"/><content type="html">&lt;div&gt;如果使用 web 和数据库不在同一台服务器上，MySQL 服务器就需要允许远程链接，网站才能正常运行。&lt;br /&gt;MySQL&amp;nbsp; 的远程链接设置有两种方法：&lt;br /&gt;&lt;br /&gt;1。改表法。&lt;br /&gt;可能是你的帐号不允许从远程登陆，只能在localhost。这个时候只要在localhost的那台电脑，登入mysql后，更改 "mysql" 数据库里的 "user" 表里的 "host" 项，从"localhost"改称"%" &lt;br /&gt;mysql -u root -pvmwaremysql&amp;gt;use mysql;mysql&amp;gt;update user set host = '%' where user = 'root';mysql&amp;gt;select host, user from user;&lt;br /&gt;&lt;br /&gt;2. 授权法。&lt;br /&gt;例如，你想myuser使用mypassword从任何主机连接到mysql服务器的话。 &lt;br /&gt;GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;&lt;/div&gt;&lt;p&gt;如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器，并使用mypassword作为密码 &lt;/p&gt;&lt;p&gt;GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;&amp;nbsp; &lt;/p&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/2184826.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/09/22/2184826.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2011/07/04/2097128.html</id><title type="text">Work Report System Summary</title><summary type="text">Work Report System Module</summary><published>2011-07-04T02:19:00Z</published><updated>2011-07-04T02:19:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/07/04/2097128.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/07/04/2097128.html"/><content type="html"> &#xD;
Work Report System:&lt;br /&gt;1.&amp;nbsp;User management (Register,&amp;nbsp; Login)&lt;br /&gt;2.&amp;nbsp;Role management(Employee, Leader, Director,&amp;nbsp; Manager)&lt;br /&gt;3.&amp;nbsp;Department&amp;nbsp; management(Level)&lt;br /&gt;4.&amp;nbsp;Approval management(Approval Flow, Approval Role)&lt;br /&gt;5.&amp;nbsp;Report management (Temporary , Daily, weekly, Monthly, Yearly)&lt;br /&gt;6.&amp;nbsp;Statistic management(By User, Department , Date)&lt;br /&gt;7.&amp;nbsp;Summary Report(Table, Graphical)&lt;br /&gt; &lt;img src="http://www.cnblogs.com/xh831213/aggbug/2097128.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/07/04/2097128.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2011/02/23/1962338.html</id><title type="text">JavaScript 基础 2 ways of check type</title><summary type="text">JavaScript 基础 2 ways of check type</summary><published>2011-02-23T07:20:00Z</published><updated>2011-02-23T07:20:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/02/23/1962338.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/02/23/1962338.html"/><content type="html">&lt;div style="position: absolute; left: 0pt; top: 0pt; z-index: 1000; font-family: arial; font-size: 13px; margin: 5px; background: none repeat scroll 0% 0% yellow; -moz-border-radius: 5px 5px 5px 5px; opacity: 0.9; display: none;" id="dictdiv"&gt;&lt;/div&gt;&lt;div id="dictaudio"&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;!--&lt;br/&gt;&lt;br/&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/&gt;http://www.CodeHighlighter.com/&lt;br/&gt;&lt;br/&gt;--&gt;&lt;span style="color: #000000;"&gt;user&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;function&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;()&amp;nbsp;{&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;function&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;Button3_onclick()&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;lily&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;user();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert(&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;typeof&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;lily&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;==&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;object&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert(lily.constructor&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;==&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;user);&lt;br /&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/1962338.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/02/23/1962338.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2011/02/23/1962308.html</id><title type="text">JavaScript 基础 引用对象</title><summary type="text">Javascript 基础知识</summary><published>2011-02-23T06:56:00Z</published><updated>2011-02-23T06:56:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/02/23/1962308.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/02/23/1962308.html"/><content type="html">&lt;div style="position: absolute; left: 0pt; top: 0pt; z-index: 1000; font-family: arial; font-size: 13px; margin: 5px; background: none repeat scroll 0% 0% yellow; -moz-border-radius: 5px 5px 5px 5px; opacity: 0.9; display: none;" id="dictdiv"&gt;&lt;/div&gt;&lt;div id="dictaudio"&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;" onclick="cnblogs_code_show('add2b632-70ac-410b-bad0-ffdaecb2db25')"&gt;&lt;br/&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/&gt;http://www.CodeHighlighter.com/&lt;br/&gt;&lt;br/&gt;--&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;item&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;12&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;itemref&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;item;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;item&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;13&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert(item&lt;/span&gt;&lt;span style="color: #000000;"&gt;==&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;itemref);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;item&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;Object();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;itemref&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;item;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;item.name&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;test&amp;nbsp;name&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert(item&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;==&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;itemref);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/1962308.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/02/23/1962308.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2011/01/05/1926101.html</id><title type="text">Oracle中查看所有的表，用户表，列名，主键，外键</title><summary type="text">在Oracle中查看所有的表:select * from tab/dba_tables/dba_objects/cat;看用户建立的表 : select table_name from user_tables; //当前用户的表select table_name from all_tables; //所有用户的表select table_name from dba_tables; //包括系统表select * from user_indexes //可以查询出所有的用户表索引查所有用户的表在all_tables主键名称、外键在all_constraints索引在all_indexes但主键也</summary><published>2011-01-05T02:48:00Z</published><updated>2011-01-05T02:48:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2011/01/05/1926101.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2011/01/05/1926101.html"/><content type="html">&lt;div style="position: absolute; left: 0pt; top: 0pt; z-index: 1000; font-family: arial; font-size: 13px; margin: 5px; background: none repeat scroll 0% 0% yellow; -moz-border-radius: 5px 5px 5px 5px; opacity: 0.9; display: none;" id="dictdiv"&gt;&lt;/div&gt;&lt;div id="dictaudio"&gt;&lt;/div&gt;&lt;div&gt;在Oracle中查看所有的表:&amp;nbsp;&lt;br /&gt;select * from tab/dba_tables/dba_objects/cat;&amp;nbsp;&lt;br /&gt;看用户建立的表 : &amp;nbsp;&lt;br /&gt;select table_name from user_tables; &amp;nbsp;//当前用户的表&amp;nbsp;&lt;br /&gt;select table_name from all_tables; &amp;nbsp;//所有用户的表&amp;nbsp;&lt;br /&gt;select table_name from dba_tables; &amp;nbsp;//包括系统表&amp;nbsp;&lt;br /&gt;select * from user_indexes //可以查询出所有的用户表索引&lt;br /&gt;查所有用户的表在all_tables&amp;nbsp;&lt;br /&gt;主键名称、外键在all_constraints&amp;nbsp;&lt;br /&gt;索引在all_indexes&amp;nbsp;&lt;br /&gt;但主键也会成为索引，所以主键也会在all_indexes里面。&amp;nbsp;&lt;br /&gt;具体需要的字段可以DESC下这几个view，dba登陆的话可以把all换成dba&lt;br /&gt;1、查找表的所有索引（包括索引名，类型，构成列）：&lt;br /&gt;select  t.*,i.index_type from user_ind_columns t,user_indexes i where  t.index_name = i.index_name and t.table_name = i.table_name and  t.table_name = 要查询的表&lt;br /&gt;2、查找表的主键（包括名称，构成列）：&lt;br /&gt;select cu.* from  user_cons_columns cu, user_constraints au where cu.constraint_name =  au.constraint_name and au.constraint_type = "P" and au.table_name =  要查询的表&lt;br /&gt;3、查找表的唯一性约束（包括名称，构成列）：&lt;br /&gt;select column_name from  user_cons_columns cu, user_constraints au where cu.constraint_name =  au.constraint_name and au.constraint_type = "U" and au.table_name =  要查询的表&lt;br /&gt;4、查找表的外键（包括名称，引用表的表名和对应的键名，下面是分成多步查询）：&lt;br /&gt;select * from user_constraints c where c.constraint_type = "R" and c.table_name = 要查询的表&lt;br /&gt;查询外键约束的列名：&lt;br /&gt;select * from user_cons_columns cl where cl.constraint_name = 外键名称&lt;br /&gt;查询引用表的键的列名：&lt;br /&gt;select * from user_cons_columns cl where cl.constraint_name = 外键引用表的键名&lt;br /&gt;5、查询表的所有列及其属性&lt;br /&gt;select  t.*,c.COMMENTS from user_tab_columns t,user_col_comments c where  t.table_name = c.table_name and t.column_name = c.column_name and  t.table_name = 要查询的表&lt;/div&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/1926101.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2011/01/05/1926101.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xh831213/archive/2010/12/29/1920580.html</id><title type="text">How to add share folder in svn(propset)</title><summary type="text">*First get Properties already existsbash-3.2$ svn pg svn:externalsanidata -r 2253 ^/lib/js/anidata/trunkaudio -r 24051 ^/lib/js/audio/trunknaturalsound -r 26164 ^/lib/js/naturalsound/trunkxml -r 22437 ^/lib/js/xml/trunk*second set Properties(exists and new)bash-3.2$ svn ps svn:externals '&amp;gt; anidata -</summary><published>2010-12-29T06:04:00Z</published><updated>2010-12-29T06:04:00Z</updated><author><name>小寒</name><uri>http://www.cnblogs.com/xh831213/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xh831213/archive/2010/12/29/1920580.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xh831213/archive/2010/12/29/1920580.html"/><content type="html">*First get Properties already exists&lt;br /&gt;&amp;nbsp;bash-3.2$ svn pg&amp;nbsp; svn:externals&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;anidata&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 2253&amp;nbsp;&amp;nbsp;&amp;nbsp; ^/lib/js/anidata/trunk&lt;br /&gt;&amp;nbsp;audio&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 24051&amp;nbsp;&amp;nbsp; ^/lib/js/audio/trunk&lt;br /&gt;&amp;nbsp;naturalsound&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 26164&amp;nbsp;&amp;nbsp; ^/lib/js/naturalsound/trunk&lt;br /&gt;&amp;nbsp;xml&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 22437&amp;nbsp;&amp;nbsp; ^/lib/js/xml/trunk&lt;br /&gt;*second set Properties(exists and new)&lt;br /&gt;&amp;nbsp;bash-3.2$ svn ps svn:externals '&lt;br /&gt;&amp;nbsp;&amp;gt; anidata&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 2253&amp;nbsp;&amp;nbsp;&amp;nbsp; ^/lib/js/anidata/trunk&lt;br /&gt;&amp;nbsp;&amp;gt; audio&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 24051&amp;nbsp;&amp;nbsp; ^/lib/js/audio/trunk&lt;br /&gt;&amp;nbsp;&amp;gt; naturalsound&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 26164&amp;nbsp;&amp;nbsp; ^/lib/js/naturalsound/trunk&lt;br /&gt;&amp;nbsp;&amp;gt; xml&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 22437&amp;nbsp;&amp;nbsp; ^/lib/js/xml/trunk&lt;br /&gt;&amp;nbsp;&amp;gt; date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -r 29111&amp;nbsp;&amp;nbsp; ^/lib/js/date/trunk&lt;br /&gt;&amp;nbsp;&amp;gt; ' .&lt;br /&gt;&amp;nbsp;property 'svn:externals' set on '.'&lt;br /&gt;*Third update forder&lt;br /&gt;&amp;nbsp;bash-3.2$ svn up&lt;br /&gt;&amp;nbsp;Fetching external item into 'anidata'&lt;br /&gt;&amp;nbsp;External at revision 2253.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;Fetching external item into 'audio'&lt;br /&gt;&amp;nbsp;External at revision 24051.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;Fetching external item into 'naturalsound'&lt;br /&gt;&amp;nbsp;External at revision 26164.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;Fetching external item into 'xml'&lt;br /&gt;&amp;nbsp;External at revision 22437.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;Fetching external item into 'date'&lt;br /&gt;&amp;nbsp;A&amp;nbsp;&amp;nbsp;&amp;nbsp; date/DateUtility.js&lt;br /&gt;&amp;nbsp; U&amp;nbsp;&amp;nbsp; date&lt;br /&gt;&amp;nbsp;Updated external to revision 29111.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;Updated to revision 34280.&lt;br /&gt;* commit changes&lt;br /&gt;&amp;nbsp;svn commit -m ' '&lt;br /&gt;&lt;img src="http://www.cnblogs.com/xh831213/aggbug/1920580.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xh831213/archive/2010/12/29/1920580.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
