Oracle 12C企业版64位安装配置

文章来源:自有   作者:水怀胜     发布时间:2023-05-30 03:54    浏览量:

CentOS7@VMware12,分配资源:CPU2颗,内存:4GB,硬盘空间:30GB

Oracle 12C企业版64

下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

过程纪要:

1. root身份安装依赖包:  

yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp

2.  建立用户和组:

3. groupadd oinstall  

4. groupadd dba  

5. groupadd oper  

6. useradd -g oinstall -G dba,oper oracle  

echo "123456" | passwd --stdin oracle #oracle用户的登录密码,后续登录要用,记着。

7. 创建安装目录:

8. mkdir -p /orcl/app/oracle/product/12.1.0/db_1  

9. chown -R oracle:oinstall /orcl/app  

chmod -R 775 /orcl/app

10. 修改内核参数vi /etc/sysctl.conf,添加:

11. fs.aio-max-nr = 1048576  

12. fs.file-max = 6815744  

13. kernel.shmall = 2097152  

14. kernel.shmmax = 1200000000    

15. kernel.shmmni = 4096  

16. kernel.sem = 250 32000 100 128  

17. net.ipv4.ip_local_port_range = 9000 65500  

18. net.core.rmem_default = 262144  

19. net.core.rmem_max = 4194304  

20. net.core.wmem_default = 262144  

net.core.wmem_max = 1048576

改好后,使之生效
sysctl -p

另外 上面的kernel.shmmax = 1200000000可能会有问题,后面咱们再说。

或者你直接现在就写成4098955264

21. 改文件限制:vi /etc/security/limits.conf,添加:

22. oracle soft nproc 2047  

23. oracle hard nproc 16384  

24. oracle soft nofile 1024  

25. oracle hard nofile 65536  

oracle soft stack 10240

注意:修改此文件是即时生效的,但可能要重登录后再看

26. 以及vi /etc/pam.d/login,添加:

session required pam_limits.so

27. 修改ulimitvi /etc/profile,添加:

28. if [ $USER = "oracle" ]; then  

29.     if [ $SHELL = "/bin/ksh" ]; then  

30.         ulimit -p 16384  

31.         ulimit -n 65536a  

32.     else  

33.         ulimit -u 16384 -n 65536  

34.     fi  

fi

35. 修改环境变量。vi ~oracle/.bash_profile,添加:

36. ORACLE_BASE=/orcl/app/oracle  

37. ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1  

38. ORACLE_SID=orcl  

39. export ORACLE_BASE ORACLE_HOME ORACLE_SID  

40. PATH=$ORACLE_HOME/bin:$PATH  

export PATH

41. yum remove *openjdk* 把系统自带的openjdk卸载,再安装sun jdkrpm -ivh jdk-8u144-linux-x64.rpm。(下载地址)(openjdk环境安装oracle GUI会报class not found的错)。然后{content}gt;java -version检查一下安装是否成功。上述工作完成后,建议重启系统。

以上操作命令如下:

42. oracle用户登录,开始安装:

43. su  oracle  

44. cd /orcl/app/oracle  

45. unzip linuxx64_12201_database.zip 

46. export LANG="en_US"  

47. cd /orcl/app/oracle/database  

48. ./runInstaller

49. 如果出现乱码 执行

export LANG=C

注:下载好的Oracle要放到/orcl/app/oracle目录下,/orcl/app/oracle/下是2个目录:productdatabase。解压后的安装文件放在database下。然后就会出现安装界面,配置过程从略。需要注意的是字符集要选择unicode。如下 

50.  总结界面:(如果没有任何错误就可以finish安装)

51. 请一定先执行/orcl/app/oracle/product/12.1.0/db_1/root.sh

52. cd /orcl/app/oracle/product/12.1.0/db_1

./root.sh

53. 安装完成(一切顺利,未见报错) 

中间有几步忘记截图了,  操作系统组 选 dba就可以了。  其他都是下一步。

 出现这个情况就是 环境变量没有设置好,  重新设置环境变量就可以了 使用  su -l  oracle  就没问题。

export ORACLE_SID=orcl   // sid为数据库实例名

export ORACLE_HOME=/u01/app/oracle/product/12.2.0.1/db_1/

export PATH=$PATH:$ORACLE_HOME/bin

登录数据库出现以下情况就是安装成功了。

 切换到root用户,  ORACLE_HOME下执行  ./root.sh

 第二种使用 dbca的方式创建数据库, 使用dbca 响应文件创建数据库:

一:强制数据库中创建的每一个表空间都是本地管理的。本地管理表空间比弃用的字段管理技术提供更好的性能。

二:确保数据库为每一个用户分配一个默认的永久表空间,而不是system表空间

三:确保数据库会为每一个用户分配一个默认的临时表空间。

 1: 找到响应文件,oracle安装目录下查找: 就是上面保存的响应文件。 或者如下复制修改也可以。

      find . -name dbca.rsp

  我的目录是在:

 复制该文件: cp dbca.rsp mydb.rsp

编辑该文件: vim mydb.rsp  设置以下参数:

gdbname = orcl

sid = orcl

templatename = General_Purpose.dbc

syspassword = oracle

systempassword = oracle

sysmanpassword = oracle

dbsnmppassword = oracle

datafiledestination = /u01/app/dbfile

storagetype = fs

characterset = AL32UTF8

nationalcharacterset = utf8

createAsContainerDatabase=true

 接下来执行响应文件的命令:我执行dbca -silent -responseFile ./mydb.rsp 会报错,少了一个命令

正确的命令为: dbca -silent -createDatabase -responseFile ./mydb.rsp

执行完毕出现:

 2:创建最优性能的表空间:

  一:推荐在弃用本地管理和自动段空间管理(ASSM)特性的情况下来创建空间。

表空间的段空间管理属性可以设置为AUTO(默认值),也可以设置为 MANUAL,   oracle强烈推荐使用auto(称为自动段空间管理, ASSM)

二:如果表空间中的对象大小是可变的,可以使用自动分配大小可以通过 extent management local autollocate 告诉oracle自动确定盘区大小, 如果有很好的理由将盘区大小设为一至,就可以使用 extent mangement local uniform 128k; 设置统一盘区大小128k;

三:当数据文件满了的时候,设置可以自动扩展, autoextend on next 50M maxsize 10G; 每次增长50M,最大扩充到10G;

create tablespace tools datafile '/u01/app/dbfile/orcl/tools01.dbf' size 200m  autoextend  on  next 50m maxsize 10G extent management  local  autoallocate;

 至此,数据库就完成了,接下来就是创建表之类的了。

3:设置开机启动监听和实例

 vim  /etc/oratab

orcl:/u01/app/oracle/product/12.2.0.1/db_1:N     把这个N改为Y

vim  /u01/app/oracle/product/12.2.0.1/db_1/bin/dbstart
ORACLE_HOME_LISTNER=$1  改为  ORACLE_HOME_LISTNER=$ORACLE_HOME

vim /u01/app/oracle/product/12.2.0.1/db_1/bin/dbshut

ORACLE_HOME_LISTNER=$1  改为  ORACLE_HOME_LISTNER=$ORACLE_HOME

 vim /etc/rc.d/rc.local 

su oracle -lc "/u01/app/oracle/product/12.2.0.1/db_1/bin/lsnrctl start"

su oracle -lc /u01/app/oracle/product/12.2.0.1/db_1/bin/dbstart
 rc.local 赋予执行权限,不然死活都不能开机启动

sudo  chmod  +x  rc.local

然后reboot,    切换到oracle账号   ps -ef | grep smon

 出现  ora_smon_orcl   就是 已经开启启动了 

em无法访问的处理:设置一下端口就可以了

sql中执行:

exec DBMS_XDB_CONFIG.SETHTTPSPORT(5500);
查询em端口:

select dbms_xdb_config.gethttpsport() from dual;

https://mydbhost.example.com:5500/em/

oracle 性能优化攻略 

启动

1.#su - oracle 切换到 oracle 用户且切换到它的环境
2.$lsnrctl status 查看监听及数据库状态
3.$lsnrctl start 启动监听
4.$sqlplus / as sysdba DBA 身份进入 sqlplus
5.SQL>startup 启动 db

 停止

1.#su - oracle 切换到 oracle 用户且切换到它的环境
2.$lsnrctl stop 停止监听
3.$sqlplus / as sysdba DBA 身份进入 sqlplus

4.SQL>SHUTDOWN IMMEDIATE 关闭 db


甘肃华科信息技术有限责任公司    版权所有    陇ICP备17001897-1号   甘公网安备 62010202001329 号