【银河麒麟V10】【服务器】Oracle11g摆设

打印 上一主题 下一主题

主题 926|帖子 926|积分 2780

一、环境准备
操纵系统版本:银河麒麟V10 SP1 0518 Server x86_64
二、基础环境准备
1、安装麒麟操纵系统
留意:预留至少7G以上swap缓存
2、关闭selinux和firewalld
3、假如是内网环境需要挂载当地源
【银河麒麟V10】【服务器】搭建当地镜像源_桂安俊@kylinOS的博客-CSDN博客_麒麟镜像源
4、准备oracle安装环境
(1)安装依赖
  1. yum install libnsl* -y
  2. yum install binutils gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXext libXtst libX11 libXau libXi unixODBC-devel
  3. -y
复制代码
(2)创建oracle用户和组
  1. groupadd oinstall
  2. groupadd dba
  3. useradd -g oinstall -G dba -m oracle
  4. passwd oracle
复制代码
(3)创建安装Oracle软件所需要的目录及赋权
  1. mkdir -p /home/oracle/app/
  2. chown -R oracle:oinstall /home/oracle/app/
  3. chmod -R 775 /home/oracle/app/
复制代码
并将oracle安装文件上传至 /home/oracle/app/ 目录下,并将“libpthread_nonshared.a”文件添加至/usr/lib64目录下。
(4)设置系统内核参数值
  1. vim /etc/sysctl.conf
复制代码
在打开的文件底部添加下面内容
  1. fs.aio-max-nr = 1048576
  2. fs.file-max = 6815744
  3. kernel.shmall = 2097152
  4. kernel.shmmax = 536870912
  5. kernel.shmmni = 4096
  6. kernel.sem = 250 32000 100 128
  7. net.ipv4.ip_local_port_range = 9000 65500
  8. net.core.rmem_default = 262144
  9. net.core.rmem_max = 4194304
  10. net.core.wmem_default = 262144
  11. net.core.wmem_max = 1048586
复制代码
使改变的系统内核参数值生效
  1. sysctl -p
复制代码
修改用户登录库文件引用limits.conf文件
  1. vim /etc/security/limits.conf
  2. # 在文件末尾添加下面6行内容:
  3. oracle soft nproc 2047
  4. oracle hard nproc 16384
  5. oracle soft nofile 1024
  6. oracle hard nofile 65536
  7. oracle soft stack 10240
  8. oracle hard stack 10240
复制代码
使改变的limits.conf文件生效
  1. vim /etc/pam.d/login
复制代码
在打开的文件底部添加下面内容
  1. session required /lib64/security/pam_limits.so
  2. session required pam_limits.so
复制代码
关闭防火墙
  1. systemctl stop firewalld.service #关闭防火墙
  2. systemctl disable firewalld.service #禁止防火墙开机启动
  3. systemctl status firewalld.service  #查看防火墙状态
复制代码
关闭selinux
  1. vi /etc/selinux/config  #编辑文件
  2. SELINUX=disabled   #修改的内容
复制代码
安装依赖、有几个包可能不在yum源中,需要在网上去下载,我这里整理了几个比较难下载的包。
compat-libcap1-1.10-7.el7.x86_64.rpm
compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
elfutils-libelf-0.185-1.el8.x86_64.rpm
elfutils-libelf-devel-0.185-1.el8.x86_64.rpm
【文章开头的网盘资料中】
  1. rpm -ivh  compat-libcap1-1.10-7.el7.x86_64.rpm --force --nodeps
复制代码
--force 欺压安装
--nodeps 不查找依赖关系
查抄是否安装成功
  1. rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
复制代码
修改用户登录环境变量
  1. vi /etc/profile
  2. # 在文件末尾添加下面内容
  3. if [ $USER = "oracle" ]; then
  4.    if [ $SHELL = "/bin/ksh" ]; then
  5.        ulimit -p 16384
  6.        ulimit -n 65536
  7.    else
  8.        ulimit -u 16384 -n 65536
  9.    fi
  10. fi
  11. source /etc/profile # 使修改的文件生效
复制代码
设置Oracle用户环境变量
  1. su - oracle #切换用户
  2. vi ~/.bash_profile # 添加内容如下
  3. # Source /root/.bashrc if user has one
  4. [ -f ~/.bashrc ] && . ~/.bashrc
  5. ORACLE_SID=orcl;export ORACLE_SID
  6. ORACLE_UNQNAME=orcl;export ORACLE_UNQNAME
  7. ORACLE_BASE=/home/oracle/app/;export ORACLE_BASE
  8. ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1;export ORACLE_HOME
  9. NLS_DATE_FORMAT="YYYY:MM:DDHH24:MI:SS";export NLS_DATE_FORMAT
  10. NLS_LANG=american_america.ZHS16GBK;export NLOS_LANG
  11. TNS_ADMIN=$ORACLE_HOME/network/admin;export TNS_ADMIN
  12. ORA_NLS11=$ORACLE_HOME/nls/data;export ORA_NLS11
  13. PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin
  14. PATH=${PATH}:/usr/bin:/bin:/usr/bin/x11:/usr/local/bin
  15. export PATH
  16. LD_LIBRARY_PATH=$ORACLE_HOME/lib
  17. LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
  18. LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
  19. export LD_LIBRARY_PATH
  20. CLASSPATH=$ORACLE_HOME/JRE
  21. CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
  22. CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
  23. CLASSPATH=${CLASSPATH}:$ORALCE_HOME/network/jlib
  24. export CLASSPATH
  25. THREADS_FLAG=native;export THREADS_FLAG
  26. export TEMP=/tmp
  27. export TMPDIR=/tmp
  28. umask 022
复制代码
办理安装界面乱码题目
下载zysong.ttf,unzip 解压
一般最小化安装的centos没有zip解压和归档管理器file-roller
yum install -y unzip file-roller
       01、建议在linux下安装些字体   
mkdir -p /usr/share/fonts/zh_CN/TrueType
cp  zysong.ttf /usr/share/fonts/zh_CN/TrueType/
       02、在下令行$file-roller
         在归档管理器打开database/stage/Components/oracle.jdk/1.5.0.17.0/1/DataFiles/xx.jar
oracle11R2.0.4.0 中xx.jar ==filegroup4.jar
fallback文件夹加载进去filegroup4.jar对应的/jdk/jre/lib/fonts/下,及拖入后字体的路径为xx.jar文件的
在归档管理器中显示的路径/jdk/jre/lib/fonts/fallback/zysong.ttf。
       03、退出安装,再次打开乱码即可题目办理
02、在设置数据库实例出现乱码
安装步伐在利用dbca设置数据库时,仍然还会出现乱码
复制上述下载的字体文件夹到oracle安装文件夹下,如我的为:
$cp ~/fallback/zysong.ttf   $ORACLE_HOME/jdk/jre/lib/fonts/fallback/

办理安装时报unzip题目
  1. su root  #切换到root用户
  2. cp /usr/bin/unzip /u01/oracle11g-install/安装包/database/install    #将系统的unzip程序拷贝到oracle安装目录的install目录下,oracle安装目录根据自己实际路径对应修改
复制代码
开始安装Oracle
图形化安装方式需要调用图形界面,需要到服务器显示器或者远程桌面或者设置ssh工具图形转发服务等,才可安装。
  1. #执行runInstaller安装脚本
  2. su oracle   #切换oracle用户安装
  3. cd   /u01/oracle11g-install/安装包/database    #oracle安装文件放置路径以实际环境为准
  4. ./runInstaller
复制代码




oracle 11gR2 安装时出现的错误:
 错误(1):
Error in invoking target 'links proc gen_pcscfg procob' of makefile '/u01/app/oracle/product/11.1.0/db_1/precomp/lib/ins_precomp.mk'.
办理方案参考网上的方法:
http://www.oracle-base.com/articles/12c/oracle-db-12cr1-installation-on-oracle-linux-7.php
保留安装历程,别的开启一个终端窗口,修改文件env_rdbms.mk内容.
# rm -rf /u01/app/oracle/product/12.1.0/db_1/lib/stubs/*
# cp /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk.orig
# vi /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk
# Line 176
# FROM:
LINKTTLIBS=$(LLIBCLNTSH) $(ORACLETTLIBS) $(LINKLDLIBS)
# TO ?:
LINKTTLIBS=$(LLIBCLNTSH) $(ORACLETTLIBS) $(LINKLDLIBS) -lons
# Line 279-280
# FROM:
LINK=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS) $(COMPSOBJS)
LINK32=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS32) $(COMPSOBJS)
# TO ?:
LINK=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS) $(COMPSOBJS) -Wl,--no-as-needed
LINK32=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS32) $(COMPSOBJS) -Wl,--no-as-needed
# Line 3041-3042
# FROM:
TG4PWD_LINKLINE= $(LINK) $(OPT) $(TG4PWDMAI) \
$(LLIBTHREAD) $(LLIBCLNTSH) $(LINKLDLIBS)
# TO ?:
TG4PWD_LINKLINE= $(LINK) $(OPT) $(TG4PWDMAI) \
$(LLIBTHREAD) $(LLIBCLNTSH) $(LINKLDLIBS) -lnnz12
然后在安装历程中点击Retry即可。
办理方案
在makefile中添加链接libnnz11库的参数
修改$ORACLE_HOME/sysman/lib/ins_emagent.mk,将
$(MK_EMAGENT_NMECTL)修改为:$(MK_EMAGENT_NMECTL) -lnnz11
建议修改前备份原始文件
[oracle@ysserver ~]$ cd $ORACLE_HOME/sysman/lib
[oracle@ysserver lib]$ cp ins_emagent.mk ins_emagent.mk.bak
[oracle@ysserver lib]$ vi ins_emagent.mk

进入vi编辑器后 ?下令模式输入/NMECTL 进行查找,快速定位要修改的行
在后面追加参数-lnnz11 ? ?第一个是字母l ? 后面两个是数字1

每次虚拟机重启执行下令都要开启监听,打开数据库,设置开机自动执行:
  1. #修改此文件,让sqlplus / as sysdba;不用手动执行
  2. vi /etc/oratab
  3. #将N改成Y
  4. orcl:/u01/app/oracle/product/11.2.0.4/db_1:N
  5. #修改此文件,数据库监听和服务开机自启
  6. vi /etc/rc.d/rc.local
  7. su - oracle -lc "/home/oracle/app/product/11.2.0/dbhome_1/bin/lsnrctl start" #与安装目录相关
  8. su - oracle -lc "/home/oracle/app/product/11.2.0/dbhome_1/bin/dbstart" #与安装目录相关
  9. #修改DB启动配置文件(安装目录中的dbstart文件)
  10. vi /home/oracle/app/product/11.2.0/dbhome_1/bin/dbstart
  11. ORACLE_HOME_LISTNER=$1 #将$1改成 $ORACLE_HOME
  12. #设置权限
  13. chmod u+x /etc/rc.d/rc.local
复制代码

create temporary tablespace ERMSDB_TEMP 
tempfile '/home/oracle/app/oradata/orcl/ERMSDB_TEMP.dbf'
 size 100m reuse autoextend on next 20m maxsize unlimited;

create tablespace ERMSDB
 datafile '/home/oracle/app/oradata/orcl/ERMSDB.dbf'
  size 100M reuse autoextend on next 40M maxsize unlimited 
  default storage(initial 128k next 128k minextents 2 maxextents unlimited);

create user ERMS_V2 identified by ERMS_V2 default tablespace ERMSDB temporary tablespace ERMSDB_TEMP;
create user ERMS_UIM identified by ERMS_UIM default tablespace ERMSDB temporary tablespace ERMSDB_TEMP;

SELECT * FROM DBA_ROLE_PRIVS WHERE GRANTEE = 'ERMS_UIM';
grant dba ,connect, resource, unlimited tablespace to ERMS_V2;
grant dba ,connect, resource, unlimited tablespace to ERMS_UIM;

可更改alter system set sec_case_sensitive_logon=false;设置改为不区分大小写,
当地导入:
imp 用户名/暗码@orcl file='文件地点' full=y ignore=y 
导入其他数据库:
imp 用户名/暗码@ip:端口//实例名 file='文件地点' full=y ignore=y 
导出:
exp 用户名/暗码@ip:端口//实例名 file='文件地点' tables=指定导出表名
多张表
exp 用户名/暗码@ip:端口/实例名 file='文件地点'  tables=table1,table2;
全部表
exp username/password@ip:端口/实例名 file='文件地点'
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%
exp erms_uim/erms_uim@orcl file=e:\bak\erms_uim_%BACKUPDATE%.dmp log=e:\bak\erms_uim_%BACKUPDATE%.log
exp erms_v2/erms_v2@orcl file=e:\bak\erms_v2_%BACKUPDATE%.dmp log=e:\bak\erms_v2_%BACKUPDATE%.log

create or replace directory backdump as '/home/oracle/backup';
Grant read,write on directory backdump to erms_uim;    
Grant read,write on directory backdump to erms_v2;

  1. #!/bin/bash
  2. # 配置备份目录和文件名
  3. BACKUP_DIR=/home/oracle/backup    #根据1设置的dump目录
  4. DATE=$(date +%Y%m%d)
  5. expdp erms_uim/erms_uim@orcl directory=BACKDUMP  schemas=erms_uim  file=/home/oracle/backup/erms_uim_$DATE.dmp log=$BACKUP_DIR/erms_v2_$DATE.log
  6. expdp erms_v2/erms_v2@orcl directory=BACKDUMP file=$BACKUP_DIR/erms_v2_$DATE.dmp log=$BACKUP_DIR/erms_v2_$DATE.log
  7. # 删除3天前的备份
  8. find ${BACKUP_DIR} -type f -mtime +3 -name "erms*.dmp" -exec rm {} \;
  9. find ${BACKUP_DIR} -type f -mtime +3 -name "erms*.log" -exec rm {} \;
复制代码
  1. select userenv('language') from dual;
  2. 查看到是ZHS16GBK,而本机库是utf-8用一下命令修改本机库字符集
  3. SQL>SHUTDOWN IMMEDIATE
  4. SQL>STARTUP MOUNT
  5. SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
  6. SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
  7. SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;
  8. SQL>ALTER DATABASE OPEN
  9. SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;
  10. SQL>SHUTDOWN IMMEDIATE
  11. SQL>STARTUP
  12. 设置后导入成功!
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

拉不拉稀肚拉稀

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表