月度归档:2015年04月

CentOS安装Oracle Express Edition(Oracle XE)教程,并解决上下与退格键的乱码问题

安装要求:

1. 系统要是Red Hat及其派生版本(比如我使用的CentOS),DebianUbuntu可能也可以安装不过需要一些其他配置

3d595dd95f404b8f9aa571d109f27737

2. Oracle XE的版本要求SWAP分区是内存的2倍,如果你的SWAP空间不够可以参考下面这篇文章
https://onlyke.com/html/270.html

3. Tmpfs要求至少为2G,如果小于2G,将在安装中出现“Database Configuration failed. Look into /u01/app/oracle/product/11.2.0/xe/config/log for details“这样的错误。

Tmpfs修改步骤:
1)修改/etc/fstab文件

vi /etc/fstab

将(如果没有这句,请直接把改为的那句添加到末尾即可):

tmpfs        /dev/shm        tmpfs   defaults      0 0

改为:

tmpfs        /dev/shm        tmpfs   defaults,size=2048M      0 0

2)重新加载tmpfs

umount /dev/shm
mount /dev/shm

3)检查

df -h /dev/shm

看看Size是不是2G

安装步骤:
1. 安装依赖包

yum install libaio libaio-devel bc

2. 安装Oracle XE
到下面这个网站下载Linux for 64
http://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html

QQ截图20150418012923
当然,你也可以wget
然后unzip这个压缩文件,没有unzip的记得执行

yum install zip unzip

然后,注意下面的文件名可能有变动,记得自己补全

cd Disk1
rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm

安装成功会提示你输入下面的命令进入配置

/etc/init.d/oracle-xe configure

进入配置后

Specify the HTTP port that will be used for Oracle Application Express [8080]:

这是设置HTTP端口,回车可以默认

Specify a port that will be used for the database listener [1521]:

设置数据库端口,回车可以默认

Specify a password to be used for database accounts. Note that the same
password will be used for SYS and SYSTEM. Oracle recommends the use of
different passwords for each database account. This can be done after
initial configuration:

这里输入数据库sys用户的密码,注意不能为空。

Do you want Oracle Database 11g Express Edition to be started on boot (y/n) [y]:

这里问你是否要开机启动数据库(可能并没有开机启动,可能还有地方要设置),输入y即可。
然后会显示下面的文字

Starting Oracle Net Listener…Done
Configuring database…Done
Starting Oracle Database 11g Express Edition instance…Done
Installation completed successfully.

到这里Oracle数据库已经安装完成了,安装完成后,会自动建立一个名为oracle的用户,用户目录/u01/app/oracle。
会建立dba组,oracle用户属于这个组。
会自动生成一个数据库实例,名为XE。/u01/app/oracle/product/11.2.0/xe/dbs/spfileXE.ora

3. 设置oracle的环境变量

vi /etc/profile

加入:

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_SID=XE

接着我们logout注销用户然后重新登录,就可以使用sqlplus登录了

sqlplus /nolog

Enter user-name: sys as sysdba
Enter password: 输入你刚才的密码

登陆成功!显示下面的信息

Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 – 64bit Production

QQ截图20150418012806

别着急,在Linux下使用sqlplus,默认情况下我们是无法使用退格键,上下键进行文字删除,语句历史记录的使用的。为了解决这个问题,我们需要安装readline和rlwrap。

解决功能键乱码的问题:
1. 安装依赖包

yum install readline-devel

2. 下载rlwrap,下面的网站
http://utopia.knoware.nl/~hlub/uck/rlwrap/
然后使用

tar -zxvf xxx.tar.gz

解压缩,进入到解压之后的目录里
3. 安装rlwrap

./configure
make
make install

这样以后登陆数据库的时候,可以使用下面的指令避免乱码

rlwrap sqlplus / as sysdba

如果每次都需要输入 rlwrap 感觉麻烦的话 , 还可以加入到 .bash_profile 中, 就不用每次都输入了

vi ~/.bash_profile

添加

alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'

保存退出
使文件立即生效

source ~/.bash_profile

如何为Linux系统添加交换分区

首先需要root身份

首先

dd if=/dev/zero of=/swapfile bs=1024 count=1048576

/dev/zero文件代表一个永远输出 0的设备文件,使用它作输入可以得到全为空的文件。因此可用来创建新文件和以覆盖的方式清除旧文件。

在这里我们创建了一个1G大小的空文件(bs表示每次写1024bit, 总共写1048576次)

然后我们吧这个文件设置为交换文件

mkswap /swapfile

这里是mkswap命令的参数 需要的可以加上
-c 建立交换区前,先检查是否有损坏的区块。
-f 在SPARC电脑上建立交换区时,要加上此参数。

-v0 建立旧式交换区,此为预设值。
-v1 建立新式交换区。

然后开启交换分区即可。

swapon /swapfile

查看结果

swapon -s

如果出现下面的文字说明安装成功

/swapfile file10485720-1

在Centos上安装高版本Apache+php5.5+Mysql 5.5

在centos直接使用yum install 安装php的话版本比较低,如果需要高版本的话,请看如下:

Remi repository 是包含最新版本 PHP 和 MySQL 包的 Linux 源,由 Remi 提供维护。有个这个源之后,使用 YUM 安装或更新 PHP、MySQL、phpMyAdmin 等服务器相关程序的时候就非常方便了。

Step 1: 安装 Remi Repository

## Install Remi & Epel Repository on RHEL/CentOS 6.4-6.0 - 32 Bit ##
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm 

## Install Remi & Epel Repository on RHEL/CentOS 6.4-6.0 - 64 Bit ## (6.5也可用)
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm 

## Install Remi Repository on RHEL/CentOS 5.9-5.0 - 32 Bit ##
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm

## Install Remi Repository on RHEL/CentOS 5.9-5.0 - 64 Bit ##
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm

Step 2: 安装 Apache, MySQL 5.5.32 & PHP 5.5.0

# yum --enablerepo=remi,remi-test install httpd mysql mysql-server php php-common

Step 3: 安装 PHP 5.5.0 模块

# yum --enablerepo=remi,remi-test install php-mysql php-gd php-mbstring php-xml

Step 4: 启动服务并配置 Apache & MySQL 5.5.32

service httpd start
service mysqld start
#下面定义mysql的root密码
/usr/bin/mysqladmin -u root password 'password'

CentOS更改SSH端口

修改配置文件:/etc/ssh/sshd_config ,找到#port 22

先将Port 22 前面的 # 号去掉,然后把22更改成你想要的端口

修改完毕后,重启SSH服务,并退出当前连接的SSH端口

service sshd restart

Debian双网卡设置

环境:eth0是外网,eth1是内网

1.

首先在/etc/network/interfaces里加入下面的内容;这里eth0与外网连,eth1与内网连。

auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet dhcp
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0

2.

echo "1" > /proc/sys/net/ipv4/ip_forward

或修改/etc/sysctl.conf,将下面这句的#号去掉

net.ipv4.ip_forward = 1

3.

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

4.

reboot重新启动计算机。双网卡就可以用了。