2007年9月29日星期六

关于oracle

虽然接触过SQL,但是接触的时间并不算太长,现在下午在和大家一起学oracle从SQL开始吧。
一个题目。我竟然能理解错
找到部门平均工资大于Diana所在部门最大工资的部门名字
SELECT department_name
FROM departments
WHERE department_id in(SELECT department_id
FROM employees
GROUP BY department_id
HAVING AVG(salary) > (SELECT MAX(salary)
FROM employees
WHERE department_id =
(SELECT department_id
FROM employees
WHERE first_name like
'Diana')
)
)

Mailman,Apache2,exim4

要安装 exim4,运行下列命令:

sudo apt-get install exim4 exim4-base exim4-config
要配置 exim4,运行下列命令:
sudo dpkg-reconfigure exim4-config

Apache2因为在装WordPress的时候已经装过,所以不在详细安装。

安装maiman

sudo apt-get install mailman(期间会有提示)

它复制安装文件到 /var/lib/mailman 目录,将 CGI 脚本安装到 /usr/lib/cgi-bin/mailman目录,创建 list linux 用户,创建 list linux 用户组。mailman 进程将以该用户运行。

再我安装好以后似乎提示site list for mailman missing,Please create it;until then,mailman will refuse to start

看来还要自己建议一个sitelist才可以启动mainman,暂时先不管他,先继续下面的配置

一旦 apache2 安装之後,您可以在 /etc/apache2/apache2.conf 文件添加下列行:

Alias /images/mailman/ "/usr/share/images/mailman/"
Alias /pipermail/ "/var/lib/mailman/archives/public/"

Mailman 使用 apache2 来运行它的 CGI 脚本。mailman 的 CGI 脚本被安装在 /usr/lib/cgi-bin/mailman 目录中。因此 mailman 的 url 将是 http://hostname/cgi-bin/mailman/。如果您希望改变这一状况,您可以修改 /etc/apache2/apache2.conf 文件。

为了使 mailman 可以和 exim4 一起工作,您需要配置 exim4。正如先前所说的那样,在缺省状态下 exim4 使用不同类型的多个配置文件。详情请参考 Exim 网站。要运行 mailman,我们可以新建一个配置文件到下列配置类型:主,传输,路由。

所有隶属于主类别的配置文件都被保存在 /etc/exim4/conf.d/main/ 目录中。您可以将下面的内容添加到一个名为 04_exim4-config_mailman 的新文件中:

MM_HOME=/var/lib/mailman
MM_UID=list
MM_GID=list
domainlist mm_domains=hostname.com↵
MM_WRAP=MM_HOME/mail/mailman
MM_LISTCHK=MM_HOME/lists/${lc::$local_part}/config.pck

所有隶属于传输类型的文件被保存在 /etc/exim4/conf.d/transport/ 目录中。您可以将下面的内容添加到一个名为 40_exim4-config_mailman 的新文件中:

mailman_transport:
driver = pipe
command = MM_WRAP \
'${if def:local_part_suffix \
{${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}} } \
{post}}' \
$local_part
current_directory = MM_HOME
home_directory = MM_HOME
user = MM_UID
group = MM_GID

所有隶属于路由类的所有配置文件都被保存在 /etc/exim4/conf.d/router/ 目录中。您可以将下列内容添加到名为 101_exim4-config_mailman 的新文件中:

mailman_router:
driver = accept
require_files = MM_HOME/lists/$local_part/config.pck
local_part_suffix_optional
local_part_suffix = -bounces : -bounces+* : \
-confirm+* : -join : -leave : \
-owner : -request : -admin
transport = mailman_transport

主类和传输类的配置文件的顺序可以随意。但路由类的配置文件的顺序必须相同。该文件必须在 200_exim4-config_primary 文件之前出现。如果两个配置文件包含相同类型的信息。

sudo /usr/sbin/newlist mailman 提示你

Enter the email address of the person running the list: xx@xx.com

Initial mailman password:

似乎我后面的那一段没有就没有添加了,接下来是运行
http://hostname/cgi-bin/mailman/admin,由于不喜欢在localhost上面搞这个,还是用我的远程设置好了

  • http://hostname/cgi-bin/mailman/admin/list: admin interface for the list list.
  • http://hostname/cgi-bin/mailman/listinfo/list: user interface for the list list.
  • http://hostname/cgi-bin/mailman/admindb/list: pending messages waiting for approval.

Command line interface

Mailman also have a set of command line tools. Here are the most important:

  • newlist: add a new list
  • rmlist ''list'': delete a list
  • list_lists: list all the lists
  • list_members ''list'': list all the members of the list
  • add_members ''user@example.com'' ''list'': add e-mail user@example.com to the list list.
  • remove_members ''user@example.com'' ''list'': remove e-mail user@example.com to the list list
  • mmsitepass: define a site password to access administration web interfaces





2007年9月28日星期五

Oracle服务开启

首先以ORACLE用户名登录,其次用lsnrctl start命令进行监听,监听开启后sqlplus /nolog登录,conn / as sysdba登录,最后startup。服务器开启。

2007年9月27日星期四

Ubuntu安装oracle 9i

原文抄袭,本来是打算安装10G的,但是似乎因为机子本来就有9I所以暂时搁浅了,具体参照10的PDF

安装过程主要参考这篇文章,该文主要是基于kubuntu安装oracle10g的,参考这篇文章可以比较容易的安装10g,但是在安装oracle9204时遇到了很多的障碍,最终安装完成了。安装过程如下:

1.空间要求

/tmp > 512M boot 128M swap 1024M / 2G /home 2GB

2.安装所需要的软件:

gcc, libaio1, libc6, libstdc++5, make, rpm, lesstif2, lesstif2-dev

vufuture@ubuntu:~$ for i in gcc libaio1 libc6 libstic++5 make rpm lesstif2 lesstif2-dev

> do

> sudo apt-get install $i

> done

3.添加需要的用户和组:

root@ubuntu:~# groupadd dba

root@ubuntu:~# useradd -g dba -G dba -d /home/oracle -s /bin/bash oracle

root@ubuntu:~# passwd oracle

Enter new UNIX password:

Retype new UNIX password:

passwd: password updated successfully

4.创建安装目录并赋权限:

root@ubuntu:~# mkdir -p /home/oracle/product/9.2.0

root@ubuntu:~# chown -R oracle:dba /home/oracle

root@ubuntu:~# mkdir /var/opt/oracle

root@ubuntu:~# chown -R oracle:dba /var/opt/oracle

root@ubuntu:~# chmod 755 /var/opt/oracle

5.设置oracle环境变量:

vi /home/oracle/.bash_profile

添加:

export ORACLE_BASE=/home/oracle

export ORACLE_HOME=$ORACLE_BASE/product/9.2.0 export ORACLE_SID=ora9i

export PATH=$PATH:$ORACLE_HOME/bin

export DISPLAY=localhost:0.0

6.修改核心参数:

root@ubuntu:~# vi /etc/sysctl.conf

#kernel.shmall = 2097152

kernel.shmmax = 2147483648

#kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.core.rmem_default = 262144

net.core.rmem_max = 262144

net.core.wmem_default = 262144

net.core.wmem_max = 262144

#fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000 7.设置安全限制:

root@ubuntu:~# vi /etc/security/limits.conf 增加如下:

# Security Limits

soft nproc 2407

hard nproc 16384

soft nofile 1024

hard nofile 65536

8.建立符号连接

root@ubuntu:~# ln -s /usr/bin/awk /bin/awk

root@ubuntu:~# ln -s /usr/bin/rpm /bin/rpm

root@ubuntu:~# ln -s /lib/libgcc_s.so.1 /lib/libgcc_s.so

root@ubuntu:~# ln -s /usr/bin/basename /bin/basename


解压安装文件:

root@ubuntu:/home# for i in 1 2 3

> do

> zcat ship_9204_linux_disk$i.cpio.gz | cpio -idmv > done

root@ubuntu:/home# su – oracle

oracle@ubuntu:/home/Disk1$ ./runInstaller

DISPLAY not set!

Please set DISPLAY and try again.

Oracle@ubuntu:/home/Disk1$ export DISPLAY=localhost:0.0 oracle@ubuntu:/home/Disk1$ ./runInstaller

oracle@ubuntu:/home/Disk1$ Initializing Java Virtual Machine from/tmp/OraInstall2007-03-23_12-40-26AM/jre/bin/java.

Please wait.. /tmp/OraInstall2007-03-23_12-40-26AM/jre/bin/i386/native_threads/java: error while loading shared libraries: libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file or directory

尝试安装:

root@ubuntu:~# apt-get install libstdc++6-dev无效 安装rpm包:

首先安装Alien,Alien 是一个将rpm, dpkg, stampede slp slackware tgz文件相互转换的工具。

Vufuture@ubuntu$ sudo apt-get install alien

vufuture@ubuntu$ sudo alien -k compat-libstdc++-7.3-2.96.118.i386.rpm

vufuture@ubuntu$ sudo dpkg -i compat-libstdc++_7.3-2.96.118_i386.deb

安装完这个rpm包后执行runInstaller不再报上面的错误,但是安装到Configuration Tools时,报如下错误: /home/oracle/jre/1.1.8/bin/../lib/i686/native_threads/libzip.so: symbol errno, version GLIBC_2.0 not defined in file libc.so.6 with link time reference (libzip.so) Unable to initialize threads: cannot find class java/lang/Thread Could not create Java VM

据网上好多文章说是由于内核版本问题,在/home/oracle/.bash_profile添加: export LD_ASSUME_KERNEL=2.4.1

继续安装,这样可以正常安装,

但是用dbca建库的时候提示: SIGSEGV 11* segmentation violation

stackbase=0xb2b4b000, stackpointer=0xb2b4ad5c ……Dump information ……

ome/oracle/product/9.2.0/bin/dbca: line 124: 27883 Killed $JRE_DIR/bin/jre -DORACLE_HOME=$OH -DJDBC_PROTOCOL=thin -mx64m -classpath $CLASSPATH oracle.sysman.assistants.dbca.Dbca $ARGUMENTS

.bash_profile增加环境变量:

THREADS_FLAG=native; export THREADS_FLAG

Explanation

The DBCA is looking for the location of the files it is to create and cannot

locate them and also may need to use native threads versus green threads.

From MetaLink

最终./bash_profile内容如下:

export ORACLE_BASE=/home/oracle

export ORACLE_HOME=/home/oracle/product/9.2.0

export ORACLE_SID=ora9i

export PATH=PATH:$ORACLE_HOME/bin:/opt/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/sbin

export DISPLAY=localhost:0.0

export LD_ASSUME_KERNEL=2.4.1

THREADS_FLAG=native; export THREADS_FLAG

在建库的时候仍然有bug2682156--"special operator does not exist"

同时,不知道为什么在安装是没有出来去掉xml DB, intermedia, text等选项的选项卡。

mysql

由于前两天装WordPress的时候已经安装了Mysql,只不过昨天用的时候无法实用远程链接比较郁闷。
在本机上:sudo apt-get install mysql-admin mysql-common mysql-query-browser
这样mysql就已经可以运行了,但是普通的设置还没有配。
sudo vim /etc/mysql/my.cnf 里面在bind-address把IP固定就可以了。然后在按照原来的文章上的出处设定远程登录用户和权限,具体是GRANT ALL PRIVILEGES ON *(database).* TO remote(用户名)@"%" IDENTIFIED BY ‘密码’;
这样就可以在远程控制该数据库。
在本机linux上用serverhost为localhost就可以登录。

QQ2007新功能

QQ2007偶然发现一个功能对普通号码开放就是对在线使用隐身,我记得去年看得时候我同学是会员才具备这个功能,现在对普通号码也开放实属难得。SO,有些人88

2007年9月26日星期三

ubuntu架wiki

原帖出处

最近对ubuntu下各类服务表示出浓厚的兴趣,今天在研究怎么装wiki,从网上来看Mediawiki似乎导入的时间较长,对我这个没有耐心的人来说,还是速成一点的比较好,搜索了一下果然有。
安装环境:ubuntu7.04

1、安装MoinMoin

$ sudo apt-get install python-moinmoin

2、新建wiki目录

$ sudo mkdir /var/www/mywiki
$ cd /var/www/

3、复制文件

$ sudo cp -R /usr/share/moin/data mywiki
$ sudo cp -R /usr/share/moin/underlay mywiki
$ sudo cp /usr/share/moin/config/wikiconfig.py mywiki
$ sudo chmod -R a+rwX mywiki

4、安装 moin.cgi

$ sudo cd mywiki
$ sudo mkdir cgi-bin
$ sudo cp /usr/share/moin/server/moin.cgi cgi-bin
$ sudo chown -R www-data.www-data cgi-bin
$ sudo -R ug+rx cgi-bin(这段似乎缺少命令,应该是chown 或者 chmod命令,但是如果是chown的话上面应该写过了,所以不明)
$ sudo -R o-rwx cgi-bin(同上)

5、配置 moin.cgi

$ sudo vi cgi-bin/moin.cgi

在 import sys 后面添加sys.path.insert(0, '..'),注释掉下其余的sys.path.insert语句。

import sys
sys.path.insert(0, '..')
#sys.path.insert(0, '/etc/moin')

6、配置 Apache

在Apache的配置文件 /etc/apache2/apache2.conf 或 /etc/apache2/httpd.conf 添加以下语句:

Alias /wiki/ "/usr/share/moin/htdocs"
ScriptAlias /mywiki "/var/www/mywiki/cgi-bin/moin.cgi

7、配置 MoinMoin

更改 /var/www/mywiki/wikiconfig.py 中的相关内容,如下

data_dir = '../data/'
data_underlay_dir = '../underlay/'
url_prefix = '/wiki'

8、结束

重启Apache

sudo /etc/init.d/apache2 restart

浏览器中输入 http://127.0.0.1/mywiki/,应该已经 OK 了。(貌似我的不OK,发觉实用进来是提示错误的信息。。郁闷。。检查中)

2007年9月25日星期二

Ubuntu/Debian LAMP+wordpress完全傻瓜安装攻略

原文出处

Table of Contents

1 环境配置

1.1 安装必要软件

sudo apt-get install apache2
sudo apt-get install libapache2-mod-php5 php5
sudo apt-get install mysql-server-5.0 mysql-common mysql-admin
sudo apt-get install php5-mysql

1.2 mysql初始配置

设置mysql密码:

sudo mysql-admin

第一次运行用root登录不需要密码。可以进去后添加用户同时修改root密码。
然后点击Catalogs,在下面的Schemata里面新建一个数据库。
然后进入User Administrator,在新建的User上选Schema Privileges,赋予其对该数据库操作的权限。

(mysql-admin比较好的一个东西,操作性也比较方便,极大的提高了对于tables的表达和实用)

1.3 启动apache2和mysql server

启动apache2和mysql

sudo /etc/init.d/mysql start;sudo /etc/init.d/apache2 start

2 Wordpress安装

2.1 准备工作

下载,解压缩,放到apache2的目录里,修改权限。

wget -c http://wordpress.org/latest.tar.gz(由于权限问题,本机下载的时候保存在~$ 下,需要你ls)
tar xvzf wordpress-2.2.tar.gz(解压的时候先新建一个dir然后sudo一下,如果直接复制该命令会导致无法解压,权限问题比较重要)
sudo cp -rf wordpress /var/www/(Apache2所在)
sudo chown -R www-data:www-data wordpress/(没有完全明白)

2.2 wordpress配置

然后进入http://localhost/wordpress/
check一下

修改wp-config-sample.php文件

sudo gvim wp-config-sample.php

主要是前面三个

define('DB_NAME', 'wordpress');    // The name of the database
define('DB_USER', 'username'); // Your MySQL username
define('DB_PASSWORD', 'password'); // ...and password

修改成刚才建立的数据库名称,用户名和密码。 然后运行

sudo mv wp-config-sample.php wp-config.php (建议做下backup虽然比较简单)

现在进入入http://localhost/wordpress/
check一下

(这里我发现的问题是当我直接进入的测试的时候,系统提示为不能找到该数据库,我在linux下重启mysql也没有用,提示是mysql有错误,无奈reboot一下,然后就可以了)

然后点 Install.php 就可以了:)
总结:总体来说安装步骤还是比较简单,其中的内容也比较的详细,后台设计的比较漂亮,模板需要自己去下载,对于一个初学者来说是比较强大,至于稳定性并没有太过的测试。对于喜欢尝新鲜的人来说,wordpress确实是一个比较好的BLOG系统。

2007年9月24日星期一

最近几日

  • 参加了同学的婚礼,等着做干爹。
  • LINUX稍微提高了那么一点。
  • 台风过境没被吹跑。
  • 游泳票还有5张,一个人独去,拖住小贾算是幸运。
  • 和DD练的WL70了,TBC觉得特白痴,没人组队的日子就是无聊。
  • 老爸不停的抱怨,老妈不停的唠叨。想找个地方休息下。
  • 5年内回次四川。
  • 老爸的辣味有的特色了。
  • 明天中秋节。
  • LINUX下的VPN架起来PPTP,但是好像有点错误。
  • 16:02分,饿了。
小节结束,工作7天,国庆节。小沈同学结婚,嘿嘿。

2007年9月12日星期三

写点什么

感觉今天要写点什么。。具体写什么忘记了。。。