Linux/Centos安装oracle11G数据库-史上最详细的图文安装数据库方法
1.环境介绍本文是在CentOS7.0x64系统上安装oracle11g 如下图所示:物理内存应不少于1GB,对于VMWARE虚拟机建议不少于1200MB.对于系统中的交换分区设置,应参以下约定:物理内存为1GB~2GB时,交换分区为物理内存的1.5~2倍;物理内存为2GB~16GB时,交换分区与物理内存大小相同;物理内存超过16GB时,交换分区使用16GB就可以了。如下图所示:2.安装准备对于6
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到%70报错问题
如下图为报错:
解决办法:
#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.选择数据库版本
选择企业版,点击下一步,如下图所示:
默认会读取刚才配置的oracle用户的环境变量,默认就可以,点击下一步,如下图所示:
如下图所示,点击下一步:
会读取oracle的环境变量,全局数据库名和oracle数据库标识符尽量一样,如下图所示,点击下一步:
启用自动内存管理的选项去掉,一共四个选项
字符集根据需求配置,如下图所示;
安全性要求如下图所示:
示例方案根据个人需求选,如果是自己测试使用,建议勾选,如下图所示:
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;
如果对此有兴趣,请扫下面二维码免费获取更多详情,如果文章对您有帮助,请打赏博主一两毛钱。
更多推荐
所有评论(0)