永不言弃,简单就好
每一个付出,都有回报,永远不放弃
随笔- 110  文章- 0  评论- 29 
博客园  首页  新随笔  联系  管理  订阅 订阅
2011年11月1日
用Media Player把CD音乐拷硬盘上
 

  你有许多CD片,在电脑里放的时候一张张送进去觉得很麻烦吗?而且你经常听某些专辑的某几首歌。如果把这些音乐拷到硬盘上就方便多了。

  我们这里拿WindowsMediaPlayer11做演示。较早版本的MediaPlayer上操作基本相似。

  在WindowsXP上的WindowsMediaPlayer11可从这里下载:http://www.skycn.com/soft/17373.html  

  请大家跟着操作一下:

  我们先打开MediaPlayer,在播放器顶端处点右键(或者按ALT键)->工具菜单->选项。

  我们看一下几个选项要设置:

  翻录音乐到此位置:就是说翻录好的音乐放在硬盘上的哪个位置。你可以不用默认设置,把它转移到空间大点的分区上。
格式:这个选项很重要。决定了你的音乐最终保存成WMA文件还是MP3文件。MP3还是最广泛的一种格式。WMA往往占空间稍微小些。

  音频质量:这个滑块可以左右拖动调节音频质量。声音质量越高,占空间越大。

  设置完后按确定。

  把CD放入光驱,点开MediaPlayer的翻录选项卡,你可以只选择想翻录的音乐曲目。

  按开始翻录就开始了,等一会儿就完成了。

  每次把CD放入光驱会弹出自动菜单,上面有项从CD翻录音乐,如果选择这个的话它就自动帮你把这张CD上的音乐全部拷到硬盘上了。

posted @ 2011-11-01 11:20 嘎子 阅读(2) 评论(0) 编辑
2011年10月25日
在9i的数据库中排除某些表做owner级导出

· 作者 小荷||【转载时请务必以超链接形式标明文章原始出处和作者信息】
· 永久链接: http://www.oracleblog.org/working-case/exclude-some-table-in-9i-exp/


在做exp的时候,我们可以做owner级的导出,导出该用户下的所有对象。owner级的导出,会导出所有的表,不太容易排除单独的一些表;而如果做table级的导出,就必须列出所有的table,且当数据库有增加新table的时候,也得把新增的table加到exp的列表中。

今天收到一个客户的要求,做owner级别的导出,但是需要排除几张大表。该需要做成定时的脚本每天执行。

其实,如果在10g中用数据泵,这个exclude很方便处理,但是在9i中,用什么方法才能把某些表单独排除呢?原来我们可以用FGAC来实现。

一、在这里,我们假设我们需要对用户mytest做owner级导出。

SQL> create user mytest identified by mytest default tablespace users;
 
用户已创建。
 
SQL> grant connect,resource to mytest;
 
授权成功。
 
SQL>
SQL> conn mytest/mytest
已连接。
SQL>
SQL>
SQL> create table t1 as select * from dual;
 
表已创建。
 
SQL>
SQL>
SQL> create table t2 as select * from all_objects;
 
表已创建。
 
SQL> select table_name from user_tables;
 
TABLE_NAME
----------------------------
--
T1

T2
 
SQL>

二、新建一个用户用于做exp的导出,新建该用户的目的是:该用户只是用来做exp导出,而不修改原来的dba用户或者application用户来做exp导出:

SQL> create user expuser identified by expuser default tablespace users;
 
用户已创建。
 
SQL> grant connect,resource,dba to expuser;
 
授权成功。
 
SQL>

三、建立exclude_table 函数:

SQL> conn expuser/expuser
已连接。
SQL> CREATE or REPLACE FUNCTION exclude_table(obj_schema VARCHAR2,
 
2                                           obj_name   VARCHAR2)
 
3    RETURN VARCHAR2 IS
 
4    d_predicate VARCHAR2(2000);
 
5  BEGIN
 
6    if sys_context('USERENV', 'SESSION_USER') = 'EXPUSER' THEN
 
7      d_predicate := '1=2';
 
8    else
 
9      d_predicate := '';
 
10    end if;
 
11    RETURN d_predicate;
 
12  END exclude_table;
 
13  /
 
函数已创建。
 
SQL>

这个函数用来控制用户对某个表的访问,FGAC大致的功能是利用dbsm_rls部署一些策略(policy),这些策略会调用一些函数,比如上面我定义的那个exclude_table函数,利用函数,来使得普通执行的sql后面加上谓词。

比如,某sql是:

select table_name from dba_tables;

被细粒度权限控制之后,这个sql语句会自动在后面加上where的谓词做过滤,变成类似:

select table_name from dba_tables where owner='MYUSER';

因此,当被细粒度权限控制之后,就算执行select table_name from dba_tables;也只能出现owner=’MYUSER’的表。

回到上面的exclude_table函数,大致的意思就是当操作的用户是EXPUSER的时候,就在操作的语句后面加1=2,我们知道1=2为非真,因此能select出来的结果肯定是0行。因此,这样就类似的实现了我们对某些表做exp的时候,不导出数据的目的。

好,我们继续把这个函数的功能加到mytest用户下的t1表上。我们用dbms_rls.add_policy来实现,我们先看一下这个过程的参数:

PROCEDURE ADD_POLICY
参数名称                       类型                    输入/输出默认值?
----------------------------
-- ----------------------- ------ --------
 
OBJECT_SCHEMA                  VARCHAR2                IN     DEFAULT
 
OBJECT_NAME                    VARCHAR2                IN
 
POLICY_NAME                    VARCHAR2                IN
 
FUNCTION_SCHEMA                VARCHAR2                IN     DEFAULT
 
POLICY_FUNCTION                VARCHAR2                IN
 
STATEMENT_TYPES                VARCHAR2                IN     DEFAULT
 
UPDATE_CHECK                   BOOLEAN                 IN     DEFAULT
 
ENABLE                         BOOLEAN                 IN     DEFAULT
 
STATIC_POLICY                  BOOLEAN                 IN     DEFAULT
 
POLICY_TYPE                    BINARY_INTEGER          IN     DEFAULT
 
LONG_PREDICATE                 BOOLEAN                 IN     DEFAULT
 
SEC_RELEVANT_COLS              VARCHAR2                IN     DEFAULT
 
SEC_RELEVANT_COLS_OPT          BINARY_INTEGER          IN     DEFAULT
 
几个主要字段的解释:
object_schema:用来做细粒度访问控制对象所对应的用户,如果为空则默认是当前用户。
object_name:用来做细粒度访问控制对象(可以是表,或视图或同义词)
policy_name:策略名,可自定义。但是如果对同一表或者视图,策略名必须唯一。但是如果是不同用户下的同一个表或者视图,可以用相同的策略名。
function_schema:自定义函数的用户,该用户应该有权限能调用之前我们建立的那个函数。如果为空,则默认是当前用户。
policy_function:函数名,即之前我们自己定义谓词的函数,如果函数定义在包里面,则这里也需写上包的名字。
statement_types:操作的类型,如select,insert,update或delete,如果为空,则默认是所有类型的操作。

因此对于排除mytest用户下的t1表,我们可以执行:

SQL> exec dbms_rls.add_policy(OBJECT_SCHEMA=>'MYTEST',OBJECT_NAME=>'T1',POLICY_NAME=>'POL_T1',FUNCTION_SCHEMA=>'EXPUSER'
,
POLICY_FUNCTION=>'EXCLUDE_TABLE');
 
PL/SQL 过程已成功完成。
 
SQL>

上述的结果可以用这个sql去检查:

SQL> select OBJECT_OWNER,OBJECT_NAME,POLICY_GROUP,POLICY_NAME,PF_OWNER,FUNCTION from dba_policies
 
2  where PF_OWNER='EXPUSER';
 
OBJECT_OWN OBJECT_NAM POLICY_GROUP                   POLICY_NAM PF_OWNER   FUNCTION
--------
-- ---------- ------------------------------ ---------- ---------- ------------------------------
MYTEST     T1         SYS_DEFAULT                    POL_T1     EXPUSER    EXCLUDE_TABLE
 
SQL>

四、好,我们现在来测试owner级导出:
1、我们先测试一下select操作:

SQL> conn system/manager
已连接。
SQL> select * from mytest.t1;
 
D
-
X
 
SQL>
SQL> conn expuser/expuser
已连接。
SQL> select * from mytest.t1;
 
未选定行
 
SQL>

这里的区别已经很明显的看出来了。

2、最后我们来实现我们的需求,按照owner级的导出,却排除t1表:

C:\>exp expuser/expuser owner=mytest file=mytest.dmp log=mytest.log;
 
Export: Release 10.2.0.1.0 - Production on 星期五 1月 7 22:25:34 2011
 
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
 
 
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
已导出
ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集
 
即将导出指定的用户...
. 正在导出
pre-schema 过程对象和操作
. 正在导出用户
MYTEST 的外部函数库名
. 导出
PUBLIC 类型同义词
. 正在导出专用类型同义词
. 正在导出用户
MYTEST 的对象类型定义
即将导出
MYTEST 的对象...
. 正在导出数据库链接
. 正在导出序号
. 正在导出簇定义
. 即将导出
MYTEST 的表通过常规路径...
EXP-00079: 表 "T1" 中的数据是被保护的。常规路径只能导出部分表。
. . 正在导出表                             
T1导出了           0 行
EXP-00091: 正在导出有问题的统计信息。
. . 正在导出表                             
T2导出了       38250 行
. 正在导出同义词
. 正在导出视图
. 正在导出存储过程
. 正在导出运算符
. 正在导出引用完整性约束条件
. 正在导出触发器
. 正在导出索引类型
. 正在导出位图, 功能性索引和可扩展索引
. 正在导出后期表活动
. 正在导出实体化视图
. 正在导出快照日志
. 正在导出作业队列
. 正在导出刷新组和子组
. 正在导出维
. 正在导出
post-schema 过程对象和操作
. 正在导出统计信息
导出成功终止, 但出现警告。
 
C:\>

我们看到t1表导出了0行(但是表结构还是被导出的)。

五、取消FGAC。
取消很容易,执行执行dbms_rls中的drop_policy即可:

SQL> exec dbms_rls.drop_policy(OBJECT_SCHEMA=>'MYTEST',OBJECT_NAME=>'T1',POLICY_NAME=>'POL_T1');
 
PL/SQL 过程已成功完成。
 
SQL>

posted @ 2011-10-25 11:57 嘎子 阅读(5) 评论(0) 编辑
2011年9月28日
Oracle性能误区--MTS,RAC,分区,并行查询
      学习一项新的东西前需要理解其目的,下面这篇文章侧面介绍了ORACLE中RAC等4个组件的优缺点,以供日后参考。下面为文章全文:

为了提高性能,我们针对Oracle数据库本身提供了的方法或方案进行过不少的偿试
主要包括:
     共享服务器模式(MTS)
     集群技术(Clustering),RAC 
    分区
    并行处理(主要是并行查询)

Oracle提供的这些特性确实是用来进行性能改善的,但我们往往忽略了对自身应用特性的分析,它们是否适合于我们.
最近,通过对这方面知识的深入了解,发现我们以前存在一些错误的认识.我觉得有必要,大家一起来改变这种误解.

分析之前,先明确一下我们的应用特性.
数据库应用大体可以分为OLAP和OLTP两大类,即:联机事务分析(数据仓库)和联机事务处理(事务应用)
我们的应用系统,其应用特性主要是联机事务处理,又包含了少量的数据仓库特性.

1.共享服务器(MTS)
Oracle缺省用的是专用服务器模式,也就是说一个用户连接进程对应一个服务器的进程.
记得某大医院刚启用的时候,我们曾经试过MTS.因为听说MTS在不增加内存和CPU的情况下连接更多的客户端,结果并不是我们预期的那样.
MTS有问题吗?不是,是因为我们对MTS不了解,并不是它有问题,而是它不是用来在这种情况下做这件事的.

一般情况,只有当并发连接数超过了操作系统的支持时,才建议使用MTS,否则应该使用缺省的专用服务器模式.
也就是说,在专用服务器模式下,因为多一个连接就要多消耗一个操作系统的进程,只有当并发应用需求超过操作系统的允许连接数时,才有必要考虑MTS.
如果现有系统,物理上支持100个连接的专用服务器数据库,改为使用共享服务器模式,也许支持1000个连接,但同时活动的连接可能只有100个.
一般2到4个CPU的服务器,应对200到400个并发连接是足够的,如果连接增加了,可以增加CPU和内存.

MTS具有以下一些缺点:
1.共享服务器的代码路径比专用服务器长,所以它天生就比专用服务器慢.
2.存在人为死锁的可能,因为它是串行的,所有共享服务器绑定在一起(一个进程),只要一个连接阻塞,则所有用户阻塞,并且极可能死锁.
3.存在独占事务的可能,因为如果一个会话的事务运行时间过长,它独占共享资源,其它用户只能等待.(而专用服务器,每个客户端是一个会话)
4.共享服务器模式限制了某些数据库特性,例如:
不能单独启动和关闭实例,不能进行介质恢复,不能使用Log Miner,不能使用,并且SQL_TRACE没有意义(因为是共享而不是当前会话的).

MTS减少的内存实际上是专用服务器模式下每个用户连接到操作系统进程所需的内存,但它却使用SGA的Large_Pool来分配UGA,拆东墙补西墙,所减少的内存是很少的.
如果用户会话的连接和断开很频繁,数据库进程的创建和删除的开销会非常大,这种情况最好采用共享服务器模式(否则,应该使用连接池技术).
所幸的是,我们产品的设计可能就考虑了这个因素,使用的是一次连接终身使用(会话生命周期内),避免了这种情况.

所以,综上所述,针对我们产品,建议采用缺省的专用服务器模式,连接不够时,通过增加硬件解决,而不是改用MTS.
另外,实际上,Oracle可以同时支持共享服务器和专用服务器模式,可以指定一个会话使用专用服务器,另一个会话使用共享服务器.

2.集群技术(RAC)
Oracle RAC(Real Application Clusters),我们说的双机容错就是RAC的一种. 
集群技术的优势在在于横向扩展性能,并提供高可用性.
32位的操作系统有4G内存的限制,有些Unix系统(以及非高级版本的Windows)有CPU个数的限制.
而集群技术通过集合多台机器协同工作,横向打破了这种限制.
通过RAC,一台服务器一个实例,多台机器构成一个实例服务集,客户端连接到它上面.
这项技术,我们有时对客户说是负载均衡,实际上这是片面的,RAC的主要针对的是CPU和内存的负载均衡,
并没有实现磁盘IO的负载均衡.(当然,磁盘IO可以通过Raid或NAS来实现)

RAC还有一个好处是,提高了可用性,也就是说一台服务器坏掉了(注意:不是数据存储介质),不影响正常使用.
就像负载均衡一样,它提高了数据层以上的可用性,但不是全部,因为数据坏了,它也没有办法.
(数据层,那是Oracle Data Guard的事了,或者干脆说那是存储硬件的事)

但是,RAC带来好处的同时,也带来了性能的影响.
因为它要全局协调数据高速缓存,保证每个实例上连接的用户看到的缓存数据是一致的,所以把以下三方面的矛盾放大:
1.高速缓存争用
2.过多的I/O
3.锁定
也就是说,如果这些方面有问题,用了RAC后问题就会更大,例如:由于SQL没有使用绑定变量导致高速缓存争用,用了RAC会更严重.
总之,如果你的服务器的CPU插满了,内存也加到极限了,而并发用户还在不断增长,或者你对故障停机时间要求非常高,RAC无疑是你应该选择的.


3.分区
Oracle的分区用途在于把大的表或索引分成小的片段,以便更容易管理.
我们以前可能错误的认为分区就是fast=true,可以提高速度,也在肿瘤和儿科做过这方面的试验.
实际上,在事务处理系统中,分区一般不能加快查询速度(某些情况下可能会减少对共享资源的争用).
Oracle的分区特性,主要是针对数据仓库来设计的,也就是说你的某张表如果有100G的大小,最好使用分区,好处有以下三个方面:
1.提高可用性
分区的原理就是分而治之,如果一张表划分为多个分区,其中一个分区所在的介质出了问题,不影响整个表的其它分区数据的访问.
2.易于管理
在数据仓库下,表分成小的片断,更容易批量的删除,碎片整理,以及一些并行处理.
3.提高性能
这方面,通过分区来达到是最困难的,必须经过周密的计算来安排分区数据.

分区的规划是复杂的,拿我们产品应用来说,一般查询涉及到多个表,多个索引,
假设我们把病人费用记录,药品收发记录,病人医嘱记录这类大表建立分区.
显然,范围分区对我们提升性能用处不大,散列分区才是我们查询需求的,但大多数数据的散列又不够集中.
再加上,这些表上的索引这么多,常用的ID,时间类索引就不少,
很少有人能做到把它们全部进行全局分区或准确的进行范围分区(实际上可能根本无法按需求进行多个索引的范围分区).
如果查询经常涉及多个索引,如何保证用到的每个索引都在一个分区上,如果不是,必然扫描多个分区,增加逻辑I/O和CPU时间,从而增加查询时间.
(数据分布在不同物理存储介质的情况,在下面的并行处理中再讨论)

再来看一下,某些情况下可能会减少对共享资源的争用是指什么,是指并行修改和更新会更快.
仔细分析,我们分区的原则是什么?一般最常用的可能是按时间段进行范围分区,这样,修改和更新绝大多数还是在同一个分区上进行,
所以对减少共享资源的争用这方面,基本没有什么效果.
(有按科室ID进行散列分区的对应的唯一应用需求吗?有基于列表分区(典型特征值)的对应的唯一应用需求吗?基本上没有.)

分区主要从并行的角度来提高性能,但事务处理系统本身应用特性决定了它不适合这种技术.
也就是说,针对我们产品的事务处理应用特点,根本没有必要采用分区技术.


4.并行处理
根据我们的应用特点,主要分析并行查询.一般要求配合分区特性,多CPU硬件.
自Oracle 8.1.6起,增加了一个自动调节并行查询的选项:PARALLEL_AUTOMATIC_TUNING=TRUE
在相应的表上设置PARALLEL参数,Oracle就会在适当的时候自动并行化该表上的操作.

并行查询对事务处理系统基本上没有用.
因为并行查询的设计是针对数据仓库中的单用户完全消耗100的资源而做的.
而事务处理中,往往有很多并发用户,他们争用共用资源,所以你想办法让一个用户占用所有的资源是适得其反.

以上就是我对Oracle性能的一些常见解决方案的学习理解,希望能帮助大家对这些专题形成正确的理解.

posted @ 2011-09-28 15:26 嘎子 阅读(7) 评论(0) 编辑
2011年9月26日
将多个文本文件合并成一个文件的3种方法

第一种:

WinRAR的另类应用:将多个文本文件合成一个文件    

           大家在日常Windows系统操作应用中,肯定会经常用到将多个文本文件合并成一个文件,想必大多数都是利用复制粘贴功能来完成这项工作的吧!下面我来告诉大家一个巧法来完成这个功能哟!我是利用WinRAR压缩软件轻松解决了以上问题的,来瞧瞧了哟!

  1、首先选中需要合并的多个TXT文档,然后单击鼠标右键,在弹出的菜单中选中“Win-RAR—添加到压缩文件”命令,这时会出现“压缩文件名和参数”窗口,在“常规”标签页中对压缩文件进行命名,并将“压缩方式”下拉框中的“存储”一项选中,点击“确定”按钮退出; 

  2、文件压缩完毕后,再用鼠标右键单击该压缩文件,在弹出菜单中选中“重命名”命令,接着把该压缩文件的扩展名rar更改为txt,单击“回车键”,此时系统会出现“如果改变文件扩展名,可能会导致文件不可用。确定要更改吗?”的提示对话框,直接单击“是”;

3、扩展名更改好之后,双击并打开已完成合并的该TXT文档,把文档上头的几行乱码删除掉,再次“保存”,这样便大功告成了。

第二种:

Word 07快速将多个文档合并

Word 2007可以帮助你将多个Word文档合并为一个文档。例如,如果在写作一本书时,每一章都是一个单独的Word文档,可能会希望完成之后将其合并为一个文档,以便一次性创建整本书的目录。

  Word 2007可以帮助你将多个Word文档合并为一个文档。例如,如果在写作一本书时,每一章都是一个单独的Word文档,可能会希望完成之后将其合并为一个文档,以便一次性创建整本书的目录。

  具体操作步骤如下。

  1.新建一个文档,并使其页面设置等与要合并的多个文档一致。也可以打开其中一个要合并的文档,然后另存为一个新的文档,并将其中内容全部删除。

  2.单击功能区中的“插入”选项卡,然后单击“对象”按钮右侧箭头,并单击弹出菜单中的“文件中的文字”命令

  3.在“插入文件”对话框中选中要合并的多个文档

4.单击“插入”按钮。如果要以链接形式插入文档,则单击“插入”按钮右侧的箭头,然后单击弹出菜单中的“插入为链接”命令。这样所选的文档就插入到新的文档中了,从而轻松实现了合并多个文档。

 

第三种:

假设,在网上下载了一本小说。这本小说是由100多个文本文件组成的。这个时候,将这100多个文本文件的内容全部合并到一个文本文件中,阅读起来就会显得很方便

    1、在“命令提示符”窗口中,使用CD命令进入小说文件所在的文件夹;

    2、输入“Copy *.txt  book.txt”命令并按Enter键执行即可。 

 

posted @ 2011-09-26 09:16 嘎子 阅读(52) 评论(0) 编辑
2011年8月29日
在AIX中查询MAC地址

方法一

#lscfg -vpl ent0

 

方法二

#netst -ni

 

方法三

#arp -a

posted @ 2011-08-29 14:19 嘎子 阅读(25) 评论(0) 编辑
2011年8月18日
删除plsql中的recall statement功能历史记录
摘要: 快捷键ctrl+E ,可以调出最近使用过的脚本查看记录保存路径:Tools --> Preferences在Tools段中有个Recall Statement默认保存路径:C:\Documents Settings\Administrator\Application Data\PLSQL Developer\删除上面文件夹内的所有文件即可。阅读全文
posted @ 2011-08-18 16:50 嘎子 阅读(43) 评论(0) 编辑
2011年7月7日
怎样把扫描好的身份证打印出实际大小
摘要: 扫描或用数码相机拍好照后(可用PS简单处理下只包含身份证样式)然后:1、在WORD中插入图片2、右键单击图片-->选择“设置图片格式”-->在“大小”标签栏中设置3、去掉“锁定纵横比”和“相对原始图片大小”复选勾4、调整高度5.4厘米,宽度8.56厘米(第二代居民身份证尺寸规格[长×宽]为:8.56cm× 5.4cm)5、确定即可打印了阅读全文
posted @ 2011-07-07 13:22 嘎子 阅读(29) 评论(0) 编辑
2011年6月21日
error:unknown filesystem GRUB
摘要: 今天收到在网上买的一款thinkpad E40笔记本,原自带Linux系统,要改装成windows xp系统。一开始用全新安装盘安装的时候就会蓝屏,后来发现是电源管理模式要改成”兼容模式”,然后用GHOST盘安装后重启提示“error:unknownfilesystemGRUB”于是直接用DM分区,然后安装ghost系统,启动时,又是出现:error:unknown filesystem GRUB rescue 。郁闷!再换diskgen全新分区,启动后报一样的报错。 最后用了一张xp的安装盘(非GHOST),全新安装一下(不是让你真的安装一次,只要走到分区,格式化一下C盘就可以了)。格后直接阅读全文
posted @ 2011-06-21 23:28 嘎子 阅读(153) 评论(0) 编辑
2011年5月24日
AIX中国--专业的AIX学习网站
摘要: AIX中国--专业的AIX学习网站http://www.aixchina.net/home/invite.php?u=8986&c=f3d34c23acab010b阅读全文
posted @ 2011-05-24 17:11 嘎子 阅读(20) 评论(0) 编辑
2011年5月16日
CMD修改SERVER-U FTP客户端密码的方法
摘要: 前提:Serv-U服务端开启了修改密码权限,允许客户端修改密码。最简单的方法,使用windows自带的工具修改:在“开始-运行”中输入"ftp " 后按回车运行,看到提示符“ftp>”输入命令“open 192.168.0.2”按提示输入User(比如说:itkf2,这是我的帐号),Password(原始密码是:123456)(这里屏幕并不会象平常我们输入的密码时显示成******),屏幕出现“230 User logged in, proceed.”表示连接成功!此时输入修改密码的命令“quote site pswd 旧密码 新密码”回车,即可修改密码了。例如我的密阅读全文
posted @ 2011-05-16 12:39 嘎子 阅读(43) 评论(0) 编辑
仅列出标题  下一页
<2012年2月>
日一二三四五六
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910
昵称:嘎子
园龄:3年3个月
粉丝:0
关注:0

搜索

 
 

常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论
  • 我的标签

随笔分类

  • .NET学习笔记(4)
  • .NET源码(8)
  • UNIX、LINUX资料(28)
  • 其它(32)
  • 数据库(41)

随笔档案

  • 2011年11月 (1)
  • 2011年10月 (1)
  • 2011年9月 (2)
  • 2011年8月 (2)
  • 2011年7月 (1)
  • 2011年6月 (1)
  • 2011年5月 (2)
  • 2011年4月 (1)
  • 2011年1月 (1)
  • 2010年10月 (4)
  • 2010年9月 (2)
  • 2010年8月 (1)
  • 2010年7月 (1)
  • 2010年6月 (1)
  • 2010年5月 (4)
  • 2010年3月 (5)
  • 2010年2月 (5)
  • 2010年1月 (2)
  • 2009年12月 (4)
  • 2009年11月 (1)
  • 2009年10月 (6)
  • 2009年9月 (11)
  • 2009年8月 (2)
  • 2009年7月 (17)
  • 2009年6月 (2)
  • 2009年5月 (3)
  • 2009年4月 (4)
  • 2009年3月 (4)
  • 2009年2月 (2)
  • 2009年1月 (2)
  • 2008年12月 (7)
  • 2008年11月 (11)

好友Blog

  • eygle
  • 疯子
  • 浪曦视频在线

最新评论

阅读排行榜

评论排行榜

推荐排行榜

Copyright ©2012 嘎子