参考文章:http://m.oschina.net/blog/318293
一.获取资源包,自己去官网下载64位版,共两个压缩包
下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
二.安装依赖包
apt-get update
apt-get install alien autoconf automake autotools-dev binutils doxygen \
elfutils expat gawk gcc gcc-multilib g++-multilib libstdc++:i386 ksh less libtiff4 \
libtiff4-dev lib32z1 libaio1 libaio-dev libc6-dev libc6-dev-i386 libc6-i386 \
libelf-dev libltdl-dev libmotif4 libodbcinstq4- libodbcinstq4-:i386 \
libpthread-stubs0 libpth-dev libstdc++ lsb-cxx make \
pdksh openssh-server rlwrap rpm sysstat unixodbc unixodbc-dev x11-utils \
zlibc libglapi-mesa:i386 libglu1-mesa:i386 libqt4-opengl:i386 \
libpthread-workqueue0 libpthread-workqueue-dev libzthread-2.3- libzthread-dev \
libpthread-stubs0-dev
其中包libtiff4, libtiff4-dev and libpthread-stubs0可能源中没有,可用以下方法安装
$sudo su
$echo 'deb http://cz.archive.ubuntu.com/ubuntu precise main universe' >> /etc/apt/sources.list.d/extra.list //添加源
apt-get update
apt-get install libtiff4 libtiff4-dev
mv /etc/apt/sources.list.d/extra.list /etc/apt/sources.list.d/extra.list.backup //移除源
apt-get update
三.配置系统环境变量
//Linking Binaries
ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpm
ln -s /usr/bin/basename /bin/basename
//Linking Libraries
ln -s /usr/lib/x86_64-linux-gnu /usr/lib64
cd /lib64
ln -s /lib/x86_64-linux-gnu/libgcc_s.so. .
四.配置oracle的用户组
groupadd -g oinstall
groupadd -g dba
groupadd -g oper
groupadd -g asmadmin
useradd -u -g oinstall -G dba,asmadmin,oper -s /bin/bash -m oracle
passwd oracle //设置你自己的密码
//创建需要安装oracle的文件夹
mkdir -p /u01/app/oracle/product/11.2./ //创建文件夹
chown -R oracle:oinstall /u01 //给文件夹更改用户组
chmod -R /u01 //设置文件夹权限
//----解压下载的压缩包至指定文件夹并设置权限
cd /home/[myUser]/Downloads //你压缩包所在路径
unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip
chown -R oracle:oinstall database
mv database /tmp
五.配置oracle 用户的.bashrc
//进入oracle 用户的账号 并在其目录下修改.bashrc文件
su - oracle //切换至oracle账号
vim ~/.bashrc
//添加以下行
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=[HOSTNAME]; export ORACLE_HOSTNAME
ORACLE_UNQNAME=DB11G; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2./dbhome_1; export ORACLE_HOME
ORACLE_SID=[DBSID]; export ORACLE_SID
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/lib64; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
//其中 HOSTNAME =127.0.0.1 DBSID=你自己创建数据库的SID(可先不改)
source ~/.bashrc 使配置生效
六.安装oracle
xhost + //切换到root账号给oracle 分配 xwindow
su - oracle //切换到oracle
export DISPLAY=:0 //安装时显示图形界面
cd /tmp/database //进入刚才解压的目录
chmod -R +x /tmp/database //给目录下文件添加 x 权限
./runInstaller //执行安装程序 可用自己的jre安装 ./runInstaller -jreloc /usr/java/[你的jre路径]
进入安装程序
不设置email
以下包fail选择忽略全部
===================================================================
==================================================================
//安装到84%时会出现错误,不要慌可以用以下代码解决
//ins_ctx.mk的错误提示,直接contiue跳过去
//后面还回报错:
//make file '/......emagent.mk'出错
//解决方法:
//另开一个终端 进入oracle 用户,键入命令行:
sed -i 's/^\(\s*\$(MK_EMAGENT_NMECTL)\)\s*$/\1 -lnnz11/g' $ORACLE_HOME/sysman/lib/ins_emagent.mk
//点击安装界面的retry,就可以继续了
//类似的后面还会提示四次,以下面的命令行如法炮制
sed -i 's/^\(\$LD \$LD_RUNTIME\) \(\$LD_OPT\)/\1 -Wl,--no-as-needed \2/g' $ORACLE_HOME/bin/genorasdksh
sed -i 's/^\(\s*\)\(\$(OCRLIBS_DEFAULT)\)/\1 -Wl,--no-as-needed \2/g' $ORACLE_HOME/srvm/lib/ins_srvm.mk
sed -i 's/^\(TNSLSNR_LINKLINE.*\$(TNSLSNR_OFILES)\) \(\$(LINKTTLIBS)\)/\1 -Wl,--no-as-needed \2/g' $ORACLE_HOME/network/lib/env_network.mk
sed -i 's/^\(ORACLE_LINKLINE.*\$(ORACLE_LINKER)\) \(\$(PL_FLAGS)\)/\1 -Wl,--no-as-needed \2/g' $ORACLE_HOME/rdbms/lib/env_rdbms.mk
//安装完成后会提示要执行两个文件
//按照它的提示切换到root账户然后进入制定路径执行就可以了
//遇到要输入什么的时候按enter即可
================================================================================
七.oracle 启动和配置
//用到的命令
dbca //创建一个数据库
netca //配置监听器 --配置servicename
lsnrctl start //打开监听器
lsnrctl stop //停止监听器
lsnrctl status //查看监听器状态
sqlplus / as sysdba // 链接数据库
startup //开启数据库
//查看监听状态时倒数第二行可能会报no service
//解决办法为在
cd $ORACLE_HOME/network/admin,修改下面的listener.ora:
//添加以下字段
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(SID_NAME = orcl)
)
)
//其中orcl为你创建的数据库名
//sqldeveloper连不上oracle的问题
解决方法:使用netmgr命令
打开后Oracle Net Configuration->Local->Listeners->LISTENER->Add Address添加地址,
Protocal: TCP/IP Host: oracle所在的IP地址 Port: