cenos7服务器中 Oracle 11g 静默安装及数据库迁移 相关命令

前提:已安装centos7。

oracle11g安装

准备工作

1、新建用户和组

/*
安装和运行Oracle数据库软件都需要使用指定用户组内的指定用户,用户为Oracle,
出于安全考虑,用户组建为oinstall、dba,
oinstall组中的成员用于管理Oracle数据库物理软件,
dba组中的成员用于管理、操作数据库,具有sysdba权限。
*/

[root@CentOS /]# groupadd oinstall ----创建oracle用户组  
[root@CentOS /]# groupadd dba ----创建oracle用户组  
[root@CentOS /]# groupadd oper
[root@CentOS /]# useradd -g oinstall -G dba,oper oracle ----oracle加入新建的2个用户组  
[root@CentOS /]# id oracle
[root@CentOS /]# passwd oracle   ----设置oracle用户的密码  

2、创建oracle安装目录

[root@CentOS /]# mkdir -p /home/oracle ----创建oracle安装目录 
[root@CentOS /]# mkdir -p /home/oracle/oracleinstall  ---创建racle安装文件所在目录
[root@CentOS /]# chown -R oracle:oinstall /home/oracle ----更改oracle目录用户组  
[root@CentOS /]# chmod -R 775 /home/oracle ----更改oracle目录权限  
[root@CentOS /]# chown -R oracle:oinstall /home/oracle/oracleinstall ----更改oracle安装文件所在目录的用户组  
[root@CentOS /]# chmod -R 755 /home/oracle/oracleinstall ----更改oracle安装文件所在目录的操作权限

3、下载oracle11g压缩包(两个都要下载)到 /home/oracle/oracleinstall 目录

分别是:
 linux.x64_11gR2_database_1of2.zip,linux.x64_11gR2_database_2of2.zip
可以通过命令下载,也可通过ftp上传。

4、解压缩安装包

[root@CentOS /]#unzip linux.x64_11gR2_database_1of2.zip
[root@CentOS /]#unzip linux.x64_11gR2_database_2of2.zip

5、安装依赖软件包

[root@CentOS /]#yum install binutils -y
[root@CentOS /]#yum install compat-libstdc++-33 -y
[root@CentOS /]#yum install compat-libstdc++-33.i686 -y
[root@CentOS /]#yum install gcc -y
[root@CentOS /]#yum install gcc-c++ -y
[root@CentOS /]#yum install glibc -y
[root@CentOS /]#yum install glibc.i686 -y
[root@CentOS /]#yum install glibc-devel -y
[root@CentOS /]#yum install glibc-devel.i686 -y
[root@CentOS /]#yum install ksh -y
[root@CentOS /]#yum install libgcc -y
[root@CentOS /]#yum install libgcc.i686 -y
[root@CentOS /]#yum install libstdc++ -y
[root@CentOS /]#yum install libstdc++.i686 -y
[root@CentOS /]#yum install libstdc++-devel -y
[root@CentOS /]#yum install libstdc++-devel.i686 -y
[root@CentOS /]#yum install libaio -y
[root@CentOS /]#yum install libaio.i686 -y
[root@CentOS /]#yum install libaio-devel -y
[root@CentOS /]#yum install libaio-devel.i686 -y
[root@CentOS /]#yum install libXext -y
[root@CentOS /]#yum install libXext.i686 -y
[root@CentOS /]#yum install libXtst -y
[root@CentOS /]#yum install libXtst.i686 -y
[root@CentOS /]#yum install libX11 -y
[root@CentOS /]#yum install libX11.i686 -y
[root@CentOS /]#yum install libXau -y
[root@CentOS /]#yum install libXau.i686 -y
[root@CentOS /]#yum install libxcb -y
[root@CentOS /]#yum install libxcb.i686 -y
[root@CentOS /]#yum install libXi -y
[root@CentOS /]#yum install libXi.i686 -y
[root@CentOS /]#yum install make -y
[root@CentOS /]#yum install sysstat -y
[root@CentOS /]#yum install unixODBC -y
[root@CentOS /]#yum install unixODBC-devel -y
[root@CentOS /]#yum install zlib-devel -y
[root@CentOS /]#yum install elfutils-libelf-devel -y

6、修改内核参数 

[root@CentOS /]#vi /etc/sysctl.conf ,添加:

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586

-- 改好后,使之生效
[root@CentOS /]#/sbin/sysctl -p

7、配置Oracle用户shell limit 

[root@CentOS /]#vi /etc/security/limits.conf 

oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  4096
oracle              hard    nofile  65536
oracle              soft    stack   10240

编辑登录配置文件 [root@CentOS /]#vi /etc/pam.d/login 
进行登录配置文件的编辑,在文本最后添加:

session required pam_limits.so

session required /lib/security/pam_limits.so

使shell limit生效。 

8、编辑 /etc/profile 

加入以下代码:

if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
fi

9、创建数据库软件目录和数据文件存放目录

目录的位置,根据自己的情况来定,注意磁盘空间即可,这里我把其放到oracle用户下,例如:

[root@CentOS /]#mkdir /home/oracle/app
[root@CentOS /]#mkdir /home/oracle/app/oradata
[root@CentOS /]#mkdir /home/oracle/app/product
更改目录属主为Oracle用户所有,输入命令:
[root@CentOS /]#chown -R oracle:oinstall /home/oracle/app

10、Oracle用户环境变量配置

/*
 Oracle用户环境变量配置 
要成功安装并使用Oracle数据库软件,必须在Oracle用户的
.bash_profile文件中设置ORACLE_BASE、ORACLE_HOME、ORACLE_SID和PATH环境变量,
其他的根据需要来设置。ORACLE_HOME可以在安装前手动配置,
另外,Oracle安装过程中会根据ORACLE_BASE的值自动指定的ORACLE_HOME,
所以也可以在安装后将这个ORACLE_HOME写入.bash_profile。
*/

[root@CentOS /]# su - oracle 
[root@CentOS /]# vi .bash_profile 

# use for oracle  
export ORACLE_BASE=/home/oracle/app  
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1  
export ORACLE_SID=orcl  
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin  
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib  
export LANG=en_US  
if [ $USER = "oracle" ];then   
 if [ $SHELL = "/bin/ksh" ];then   
     ulimit -p 16384   
     ulimit -n 65536   
   else   
    ulimit -u 16384 -n 65536   
   fi
fi

-- 使配置立即生效
[oracle@centos ~]$ source .bash_profile 
[oracle@centos ~]$ echo $ORACLE_HOME
/home/oracle/product

11、附加设置

-- 修改设置SELINUX
[oracle@centos ~]$ vi /etc/selinux/config
-- # 将`SELINUX`修改为permissive
SELINUX=permissive
[oracle@centos ~]$ setenforce Permissive
setenforce: SELinux is disabled
-- 确保禁用防火墙
[oracle@centos ~]$ systemctl stop firewalld
[oracle@centos ~]$ systemctl disable firewalld
[oracle@centos ~]$ getenforce 
Disabled

Oracle安装

1、创建oraInventory目录

-- 安装时,需要创建 oraInventory
[root@centos ~]# cd /home/oracle
[root@centos ~]# mkdir oraInventory
[root@centos ~]# chown -R oracle:oinstall /home/oracle/oraInventory
[root@centos ~]# chmod -R 775 /home/oracle/oraInventory

2、编辑静默安装响应文件

-- 备份静默安装响应文件
[oracle@centos7 ~]$ cp /home/oracle/oracleinstall/database /home/oracle/oracleinstall/tmp/

-- 编辑响应文件,修改以下参数
[oracle@centos7 ~]$ vi /home/oracle/tmp/database/response/db_install.rsp

oracle.install.option=INSTALL_DB_SWONLY

ORACLE_HOSTNAME=woitumi-197

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/home/oracle/inventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME=/home/oracle/app/product/11.2.0

ORACLE_BASE=/home/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=dba

DECLINE_SECURITY_UPDATES=true

3、运行安装命令

切换到 database目录,执行

[oracle@centos7 ~]$./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /tmp/database/response/db_install.rsp

查看安装日志,出现 Successful Setup Software字样时说明安装成功。

4、配置数据库

[root@centos /]# cd /home/oracle/app/product/11.2.0/dbhome_1/bin/
[root@centos /]# dbca

5、配置监听

[root@centos /]# cd /home/oracle/app/product/11.2.0/dbhome_1/bin/
[root@centos /]# netca

6、lsnrctl开启监听

[root@centos /]# su - oracle
[oracle@centos ~]$ lsnrctl status
[oracle@centos ~]$ lsnrctl stop
[oracle@centos ~]$ lsnrctl start

7、用户登录

[oracle@centos ~]$ sqlplus / as sysdba

数据库迁移

假设数据库名称为 oracle_db

迁移步骤:

1、创建目录及表空间

-- 创建目录
[oracle@centos ~]# cd /home/oracle/app/oradata/
[oracle@centos ~]# mkdir oracle_db
[oracle@centos ~]# chown -R oracle:oinstall /home/oracle/app/oradata/oracle_db
[oracle@centos ~]# chmod -R 775 /home/oracle/app/oradata/oracle_db
-- 创建临时空间

create temporary tablespace oracle_db_temp tempfile '/home/oracle/oradata/oracle_db/oracle_db_temp_01.dbf' size 128m autoextend on next 64m;

-- 创建默认表空间

create tablespace oracle_db_default datafile '/usr/oracle/oradata/oracle_db/oracle_db_default_01.dbf' size 128m autoextend on next 64m;

-- 创建索引表空间

create tablespace oracle_db_index datafile '/home/oracle/oradata/oracle_db/oracle_db_index_01.dbf' size 128m autoextend on next 64m;

2、创建用户并指定权限

-- 创建用户并指定表空间 

create USER oracleDBA IDENTIFIED BY QAZ123456
DEFAULT TABLESPACE oracle_db_default TEMPORARY TABLESPACE oracle_db_temp;  

-- 给用户授予权限 

GRANT CONNECT,RESOURCE,DBA TO oracleDBA;
GRANT CREATE ANY TABLE TO oracleDBA;
GRANT SELECT ANY TABLE TO oracleDBA;
GRANT DROP ANY TABLE TO oracleDBA;
GRANT INSERT ANY TABLE TO oracleDBA;
GRANT DELETE ANY TABLE TO oracleDBA;
GRANT UPDATE ANY TABLE TO oracleDBA;
GRANT CREATE ANY VIEW TO oracleDBA;
GRANT EXECUTE ANY PROCEDURE TO oracleDBA;

3、指定字符集,要求和原数据库一致,否则会出现乱码

ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER DATABASE NATIONAL CHARACTER SET AL16UTF16; 

cenos7服务器中 Oracle 11g 静默安装及数据库迁移 相关命令_第1张图片

4、导入原数据库sql文件,完成迁移。

你可能感兴趣的:(工作相关)