日历

2012年一月
« 12月   6月 »
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

最近评论

    OPENBSD

    配置匿名FTP服务

    使用ftp帐号登陆时,ftp帐号没有有效的密码,设定ftp登录后的目录是/home/ftp,ftp登录后使用的shell是/usr/bin/false,需要将/usr/bin/false添加到/etc/shells中,执行以下命令:
    # echo /usr/bin/false >> /etc/shells
    首先添加一个ftp帐号,
    # adduser
    Use option “-silent” if you don’t want to see all warnings and questions.

    Reading /etc/shells
    Check /etc/master.passwd
    Check /etc/group

    Ok, let’s go.
    Don’t worry about mistakes. There will be a chance later to correct any input.
    Enter username []: ftp
    Enter full name []: anonymous ftp
    Enter shell csh false ksh nologin sh [ksh]: false
    Uid [1001]:
    Login group ftp […]

    OPENBSD

    OPENBSD配置简易NFS

    建立NFS服务器,需要启动以下服务:portmap,mountd,nfsd
    1、在OPENBSD中,这些服务默认是关闭的,需要修改rc.conf文件:
    portmap=NO修改为portmap=YES
    添加:nfs_server=YES
    2、在/etc/exports中添加以下内容:
    /home/work -alldirs -ro -network=192.168.1 -mask=255.255.255.0
    执行以下命令启动nfs服务:
    # /usr/sbin/portmap
    # echo -n > /var/db/mountdtab
    # /sbin/mountd
    # /sbin/nfsd -tun 4
    上面一行的意思是可以通过tcp,udp连接nfs,同一时刻最大连接数是4个。
    注意:如果nfs在运行的时候更改了/etc/exports文件,需要重启nfs,以获得当前使用目录
    kill -HUP `cat /var/run/mountd.pid`

    挂载nfs文件系统
    挂载nfs文件系统,可以执行以下命令:
    # mount -t nfs 10.0.0.1:/home/work /mnt
    如果想系统开机即挂载nfs文件系统,在/etc/fstab中添加下一行:
    192.168.1.109:/work /mnt nfs rw 0 0
    上面的最后的两个0,表示系统开机时不去fschk和备份此文件。

    检查NFS的状态:
    # rpcinfo -p 192.168.1.109
       program vers proto   port
        100000    2   tcp    111  portmapper
        100000    2   udp    111  portmapper
        100005    1   udp    792  mountd
        100005    3   udp    792  mountd
        100005    […]

    OPENBSD

    openbsd配置sshd服务

    虚拟机上玩openbsd,有些费劲,想使用sshd来登录系统,结果老是提示失败,没办法,bsd和linux还是有些不一样啊。
    原来只需要以下三步:
    1、修改/etc/rc.conf文件
     在文件最后,添加上:sshd_enable=”yes” 保存退出
    2、修改/etc/ssh/sshd_config文件
    将文件中的PermitRootLogin no 修改为PermitRootLogin yes 保存退出

    #UseDNS yes 修改为: UseDNS no,这样使用ssh连接的时候不用再等2分钟了。 
    3、重新启动sshd服务
     /etc/rc.d/sshd restart

    OPENBSD

    openbsd上网配置

    网关:/etc/mygate,直接输入网关地址保存就可以了

    ip地址:/etc/hostname.vic0,输入inet 192.168.1.109 255.255.255.0

    DNS:/etc/resolv.conf,添加nameserver 202.96.69.38  和  nameserver  202.96.64.68

    上面三个文件修改保存后,重启系统,就可以了

    Mysql

    12 存储过程、游标、函数的定义使用

    12_01_存储过程函数的应用

    1、存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程和函数可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的性能的效率有好处;
    2、存储过程与函数的区别在函数必须有返回值,而存储过程的参数可以使用in out inout类型,而函数的参数只能是in类型的。

    mysql> ? create procedure;
    mysql> delimiter // 将mysql的”;”结束符变为”//”作为结束符
    mysql> create procedure pro_emp(out empcount int) 
    begin
     select count(*) into empcount from emp;
    end//
    mysql> call pro_emp(@a)//

    mysql> select @a//
    +——+
    | @a   |
    +——+
    |    4 |
    +——+

    mysql> create function constr1(str char(50)) returns char(50) return concat(‘hi’, str, ‘!’); 在mysql5.5上用此方法在服务器上无法创建函数.

    Mysql

    11 视图

    11_01_视图的创建和不可更新性

    1、视图是一种虚拟存在的表,对于使用视图的用户来说基本上是透明的。视图并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且在使用试图时是动态生成的。
    2、试图相对于普通的表的优势:简单(用户不需要关心后面对应表结构、关联、筛选条件),安全,数据独立。

    创建修改试图的语法:
    create or replace [algorithm={undefind | merge | temptable}] view view_name[(column_list)] as select_statement [with[cascaded |local] check option]

    mysql> insert into video select 0,’zhang’,’200′;
    mysql> insert into video select 0,’wang’,’1200′;
    mysql> insert into video select 0,’li’,’100′;
    mysql> insert into video select 0,’zhao’,’1100′;
    mysql> create or replace view video_view as select * from video where price between 1000 and 2000;创建视图

    mysql> select * from […]

    Mysql

    mysql5.5源码安装步骤

    mysql官方下载地址
    http://dev.mysql.com/downloads/

    mysql5.5源码安装需要cmake,下面是官方下载地址:
    http://www.cmake.org/cmake/resources/software.html
    下载最新版本cmake-2.8.7-Linux-i386.tar.gz,解压缩后,bin目录的文件可以直接使用.
    mysql5.5安装步骤官方帮助:
    http://dev.mysql.com/doc/refman/5.5/en/installing-source-distribution.html

    以下是源码安装mysql5.5的步骤:
    [root@localhost pub]# groupadd mysql
    [root@localhost pub]# useradd -g mysql mysql
    [root@localhost pub]# rpm -ivh MySQL-5.5.19-1.rhel5.src.rpm
    error: cannot create %sourcedir /usr/src/redhat/SOURCES
    [root@localhost pub]# cd /usr/src/
    [root@localhost src]# ls
    [root@localhost src]# mkdir redhat
    [root@localhost src]# rpm -ivh /var/ftp/pub/MySQL-5.5.19-1.rhel5.src.rpm
       1:MySQL                  warning: user pb2user does not exist – using root
    ########################################### [100%]
    warning: user pb2user does not exist – using root
    [root@localhost redhat]# cd SOURCES/
    [root@localhost SOURCES]# ls
    mysql-5.5.19.tar.gz
    [root@localhost SOURCES]# tar […]

    Mysql

    索引的使用

    索引概述:
    1、索引是数据库中用来提高性能的最常用的工具。所有Mysql列类型都可以被索引,对相关列使用索引是提高查询操作性能的最佳途径。
    2、根据存储引擎可以定义每个表的最大索引数和最大索引长度,每种存储引擎对每个表至少支持16个索引;
    3、MyISAM和InnoDB存储引擎的表默认创建的都是BTREE索引;
    4、MySQL中还支持全文索引,该索引用于全文搜索。5.0版本中只有MyISAAM支持全文索引,并只限于CHAR、VARCHAR和TEXT列;
    创建索引:
    mysql> use test;
    mysql> desc employee;
    +——–+———————-+——+—–+———+—————-+
    | Field  | Type                 | Null | Key | Default | Extra          |
    +——–+———————-+——+—–+———+—————-+
    | id     | smallint(5) unsigned | NO   | PRI | NULL    | auto_increment |
    | name   | varchar(50)          | YES  |     | NULL    |                |
    | deptno | smallint(5) unsigned | YES  | MUL | NULL    |                |
    +——–+———————-+——+—–+———+—————-+
    mysql> create index ind_emp_name […]

    Mysql

    9 字符集的介绍和使用

    09_1_常用字符集介绍

    字符集概述:在计算机中,只有二进制的数据,不管数据时在内存中,还是在外部存储设备中。对于我们所看到的字符,也是以二进制数据的形式存在的。不同字符对应二进制的规则,就是字符的编码。字符编码的集合称为字符集。

    2、在早期的计算机系统中,使用的字符非常少,这些字符包括26个英文字母、数字符号和一些常用符号(包括控制字符),对这些字符进行编码,用一个字节就足够了(1个字节可以表示256个字符)。然而实际中,表示这些字符只使用了1个字节的7位,这就是ASCII编码,是基于英文字符的单字节编码系统;
    3、一位ASCII编码中缺少许多和书写需要的字符,为此可以通过指定128以后的字符来扩展ASCII码。国际标准组织ISO定义了几个不同的字符集,他们是在ASCII码基础上增加了其他语言和地区需要的字符。其总常用的是ISO8859-1,通常叫做Latin-1,它包括了西方噢周语言不可缺少的附加字符,其中0-127的字符与ASCII相同。