Linux/Centos安装oracle11G数据库-史上最详细的图文安装数据库方法「建议收藏」

2022-09-02 10:30:31 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

1.环境介绍

本文是在CentOS7.0x64系统上安装oracle11g 如下图所示:

物理内存应不少于1GB,对于VMWARE虚拟机建议不少于1200MB.对于系统中的交换分区设置,应参以下约定:物理内存为1GB~2GB时,交换分区为物理内存的1.5~2倍;物理内存为2GB~16GB时,交换分区与物理内存大小相同;物理内存超过16GB时,交换分区使用16GB就可以了。如下图所示:

2.安装准备

对于64位的oracle11g数据库,若程序文件和数据文件安装在同一个分区,则该分区的硬盘空间要求分别为:企业版5.65GB、标准版5.38GB;除此以外,还应确保/tmp目录所在分区的空间不少于1GB,总的来说,建议为oracle11g准备至少8GB的硬盘空间

为oracle用户设置Shell限制:为了优化性能,需要添加oracle用户的限制参数。进程会话限制可以采用pam_limits认证模块来实现,通过修改登录程序login的PAM设置以启用该认证。 (文中所需要的软件包加最下面微信免费获取)

#vim /etc/security/limits.conf //在文件末尾添加下面四行

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

注:

第1行是设置进程数软限制;第2行是设置进程数硬限制;第3行是设置文件数软限制;第4行是设置文件数硬限制

#vim /etc/pam.d/login //在文件最后添加下面一行

session required pam_limits.so

在安装oracle时,需要单独的用户去安装,假设使用名为oracle用户安装oracle数据库,需要建立oracle用户和用户组,命令如下

#groupadd oracle

#useradd oracle –g oracle

#mkdir /oracle-11g

将pdksh-5.2.14-37.el5_8.1.x86_64.rpm,和oracle的包拷贝到oracle的家目录下/oracle-11g下

#chmod –R 755/oracle-11g/

#chown –R oracle.oracle /oracle-11g/

安装oracle时,一定要保证主机名出现在/etc/hosts中。

#hostname //查看主机名 结果如下图

#vim /etc/hosts //加入一行 结果如下图

192.168.1.1 oracle-11g

修改oracle用户的.bash_profile

#vim /home/oracle/.bash_profile

export ORACLE_BASE=”/oracle-11g/app/oracle”

export ORACLE_HOME=”/oracle-11g/app/oracle/product/11.2.0/dbhome_1″

export PATH=PATH:ORACLE_HOME/bin

export ORACLE_SID=orcl

export NLS_LANG=”SIMPLIFIED CHINESE_CHINA.UTF8″

export PATH

安装依赖包

#yum -y install libaio glibc compat-libstdc* elfutils-libelf-devel* gcc-c libaio-devel unixODBC* readline*

#cd /oracle-11g/

#yum –y install pdksh-5.2.14-37.el5_8.1.x86_64.rpm

3.常见问题解决

3.1.解决远程无法调用图形安装的问题

远程安装无法调用图形化解决办法,错误如下图:

解决方法:切换到root用户,执行命令:

#xdpyinfo | grep local //结果如下图 过滤出来是localhost:11.0

如果没有这个命令,需要用yum安装桌面

centos6/redhat6:yum groupinstall -y “X Window System”

yum groupinstall -y “Desktop”

yum groupinstall -y “Chinese Support”

centos7/redhant7:yum groupinstall “GNOMEDesktop” -y

yumgroupinstall -y “X Window System”

安装完后重启再执行命令xdpyinfo | grep local查看

切换到oracle用户设置变量

#su – oracle

#export DISPLAY= localhost:11.0

然后再执行oracle安装脚本就可以启动安装界面 如下图:

3.2.解决linux下安装中文乱码的问题

新建一个目录,上传字体包zysong.ttf到新建的目录,命令如下:

#mkdir –p /usr/share/fonts/zh_CN/TrueType

#cd /usr/share/fonts/zh_CN/TrueType

#chmod –R 755 zysong.ttf

配置系统变量为zh_CN.UTF-8,如下图所示:

然后启动oracle安装脚本,安装界面就是中文的,如下图所示:

3.3.解决centos7/redhat7安装oracle11g到p报错问题

如下图为报错:

解决办法:

#vim /oracle-11g/app1/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk

加入 -lnnz11

如下图所示点击重试,继续安装,问题解决

4.开始安装oracle11g

执行启动脚本,调用图形化安装脚本,如下图所示:

4.1配置安全更新

去掉对勾,点击下一步

点击是

4.2.软件更新

选中跳过软件更新,点击下一步 如下图所示:

4.3.选择安装选项

为了方便快捷,选择创建和配置数据库,点击下一步,如下图所示:

4.4.系统类

选择服务器类,如下图所示:

4.5.网络安装选项

选择单实例安装,点击下一步:如下图所示:

4.6.选择安装类型

选中高级安装,点击下一步,如下图所示:

4.7.选择语言

如下图所示,需要简体中文和英语,点击下一步:

4.8.选择数据库版本 选择企业版,点击下一步,如下图所示:

4.9.指定安装位置 默认会读取刚才配置的oracle用户的环境变量,默认就可以,点击下一步,如下图所示:

4.10.选择配置类型 如下图所示,点击下一步:

4.11.指定数据库标识符 会读取oracle的环境变量,全局数据库名和oracle数据库标识符尽量一样,如下图所示,点击下一步:

4.12.指定配置选项 启用自动内存管理的选项去掉,一共四个选项

字符集根据需求配置,如下图所示;

安全性要求如下图所示:

示例方案根据个人需求选,如果是自己测试使用,建议勾选,如下图所示:

4.13.指定管理选项

如下图所示,默认选则,点击下一步:

4.14.指定数据库存储选项

默认读取oracle用户环境变量,点击下一步,如下图所示:

4.15.指定恢复选项

生产环境启用自动备份,如下图所示,点击下一步:

4.16.指定方案口令

选择对所有用户使用相同的口令,如下图所示,点击下一步:

4.17.特权操作系统组

如下图所示选择,点击下一步:

4.18.先决条件检查

oracle安装之前需要修改很多内核参数,oracle越来越人性化,只需在界面上点击“修补并在次检查”

以root用户身份运行脚本

执行完后如下图:交换空间不影响数据库正常使用,勾选全部忽略,点击安装

4.19.概要

如下图所示,点击安装

4.20.安装产品

耐心等待安装完成

4.21.执行脚本

用root用户执行脚本,然后点击确定,如下图:

4.22.安装完成

5.Oracle基本操作

创建表空间

CREATE TABLESPACE cib_bank_sc

LOGGING

DATAFILE ‘/data/ora01/app/oracle/oradata/cms/jindou_data.dbf’

SIZE 128M

AUTO EXTEND ON

NEXT 128M MAXSIZE 30G

EXTENT MANAGEMENT LOCAL

SEGMENT SPACE MANAGEMENT AUTO;

创建用户并指向表空间、授权

create user jinyun identified by Ninestar123 default tablespace jinyun;

grant dba to jindou;

查看数据备份目录

select * from dba_directories;

导入数据

Impdp G6A03/Ninestar123 directory=DATA_PUMP_DIR dumpfile=G6A0220180308.DMPDP REMAP_SCHEMA=G6A02:G6A03 REMAP_TABLESPACE=G6A02:G6A03 transform=OID:N

imp G6A02/Ninestar123@orcl file=’/u01/software/expdat.dmp’ log=’/software/NSTCSA27335dmp.log’ commit=yfromuser=G6A02 touser=G6A02

导出数据

expdp G6/Ninestar123 directory=DATA_PUMP_DIR SCHEMAS=G6 dumpfile=G620180313.DMPDP

exp G6A02/Ninestar123@192.168.0.188:1521/nsdev file=/G6A0220180120.dmpowner=G6A02

解决type报错:transform=OID:N

解决版本问题:version=10.2.0.1.0

解锁用户:ALTER USER cib_bank_sc ACCOUNT UNLOCK;

查询缺省表空间:select username,default_tablespace from dba_users;

修改oracle用户密码:alter user sys identified by Ninestar123;

oracle故障,错误文件删除:alter database datafile ‘/u01/app/oracle/oradata/G6.ora’ offlinedrop; alter database datafile ‘/u01/app/oracle/oradata/G6A02.ora’ offline drop;

查询数据库是否有锁表:select * from fw_lock_resource r where r.isfree_ = 0;

删除oracle用户:drop userees2 cascade;

删除表空间:drop tablespace ees2 including contents and datafiles cascade constraint;

修改用户缺省表空间:alter user ees2 default tablespace ees2;

数据库优化:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;

ALTER SYSTEM SET PROCESSES=1000SCOPE=SPFILE;修改最大连接数

ALTER SYSTEM SETOPEN_CURSORS=1000 SCOPE=BOTH;

ALTER SYSTEM SETDB_FILES=300 SCOPE=SPFILE;

查询数据库当前的连接数:select count(*) from v$session;

查询数据库并发连接数:Select count(*) from v$session where status=’ACTIVE’;

数据库允许的最大连接数:select value from v$parameter where name = ‘processes’;

查询最大连接:show parameter processes;

查看不同用户的连接数:select username,count(username) from v$session where username is not null group by username;

如果对此有兴趣,请扫下面二维码免费获取更多详情,如果文章对您有帮助,请打赏博主一两毛钱。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/139058.html原文链接:https://javaforall.cn

0 人点赞