Linux下安装oracle 11G 无坑版本!

真不容易啊!装个oracle老报错啊!给兄弟们整理个无坑版本!

一、上传解压包

链接:点我领取安装包
提取码:8arr

cd  /home
mkdir tars
将包放到tars里面

在这里插入图片描述
解压!

unzip p13390677_112040_Linux-x86-64_1of7.zip
unzip p13390677_112040_Linux-x86-64_2of7.zip

在这里插入图片描述

二、建立oracle用户

1.root下新增用户组

groupadd oinstall
groupadd dba

在这里插入图片描述

2.新建用户

useradd -g oinstall -G dba oracle

(1)为新用户设置密码

passwd oracle

(2)密码随便你输入

[root@hadoop04 ~]# passwd oracle
更改用户 oracle 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

在这里插入图片描述

id oracle

在这里插入图片描述

3.新建oracle用户目录
(1)我选择在home目录下创建

mkdir /home/oracle
如果存在 无需创建

在这里插入图片描述
(2)切记要将该文件夹权限赋给oracle用户

chown -R oracle /home/oracle
chmod -R 775 /home/oracle

(3)这时我们看一下文件夹权限

在这里插入图片描述
4.增加sudoers用户
打开文件sudoers

sudo vim /etc/sudoers

找到
在这里插入图片描述
添加

oracle ALL=(ALL) ALL

ESC :wq! 保存退出!

在这里插入图片描述

5.现在可以切换用户了!

su - oracle
id oracle 查询一下 
注意 现在已经切换到 oracle用户下了!

在这里插入图片描述

-----------例外!-----------有的可能会出现这个情况-----有的可能不会----
错误----提醒
新建用户之后,登陆到oracle用户可能会有这种显示,不显示用户名,只显示bash-4.1~
在这里插入图片描述

在linux新建用户的时候,应该会自动将root用户下的环境文件给复制到新用户环境下的,我没有遇到这个问题,如果遇到这个时候复制一下文件就可以了。

ls -a /etc/skel/  执行就行了

[oracle@oracle ~]$ ls -a /etc/skel/
.   .bash_logout   .bashrc  .mozilla
..  .bash_profile  .kshrc

三、安装包配置

1、安装下载依赖包
这个直接下载就好

切记:回到root用户下载依赖包!
yum install binutils compat-libstdc+±33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc+±devel make sysstat unixODBC unixODBC-de -y

在这里插入图片描述
执行完成!显示!
在这里插入图片描述

四、环境配置

1.关闭防火墙 或者开放端口! 二选一

关闭防火墙
systemctl stop firewalld.service  
systemctl disable firewalld.service 
这两行命令前者是关闭防火墙,但是关机后重启还是会启动
后者是禁用防火墙,但是我自己使用,重启动后还是会防火墙开启,这点一定要注意!
禁用防火墙原因:如果不禁用,在安装过程中,会在最后配置database config时卡住。

-------没有设置开机关闭防火墙!因为工作 公司都不允许关闭防火墙!所以我习惯释放端口!

释放端口
firewall-cmd --add-port=1521/tcp --permanent   释放接口
 firewall-cmd --reload  刷新一下

2.配置hosts

root 用户执行!
vim /etc/hosts
192.168.197.123 oracle

3.其它

(1)有一些配置现在并不需要再做了,如果有兴趣可以自己查一查各个参数的意义。

root用户!
[root@oracle]# vim /etc/security/limits.conf 
oracle soft nproc 2047 
oracle hard nproc 16384 
oracle soft nofile 1024 
oracle hard nofile 65536 
oracle soft stack 10240
保存退出!

在这里插入图片描述
(2)设置内核参数,为了保障安装检查能通过(这个步骤现在不需要做,oracle在安装时,会帮我们做)

依然是 root用户!
[root@oracle]# vim /etc/sysctl.conf

添加!
kernel.shmall = 4194304
kernel.shmmax = 4147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
保存退出!

在这里插入图片描述

五、开始安装 安装用!Xshell 跳出可视化安装页面!

1.java版本查看
如果想使用图形话界面安装,必须要使用java包,否则会导致图形话界面安装中间的中文乱码,或者中间弹窗显示不出来,只有一条杠。
java在安装ret hat时是默认安装好的,我们只要查看一下版本就好。

java -version

在这里插入图片描述

2.启动安装
进入database目录,执行(记住不要使用root权限)
在这里插入图片描述

./runInstaller 
但是报错!
n 先退出!

在这里插入图片描述
解决方法!

yum install tigervnc tigervnc-server

在这里插入图片描述

vncserver
会让你输入密码: 密码最好8位 不然就会和我一样 前几次密码不成功
在执行 vncserver 就会出现 NEW························

在这里插入图片描述

注意 这个 hadoop04:2  是自己的:在 is 后边
export DISPLAY=hadoop04:2 ----root用户执行
xhost +  -----------------root用户执行
在 su - oracle 来到oracle用户
export DISPLAY=hadoop04:2
xhost +
0export LANG=en_US.UTF-8

返回 access control disabled, clients can connect from any host 才表示正确!

在这里插入图片描述
最后 启动!

oracle用户 进入到database目录
./runInstaller 

在这里插入图片描述
然后变成可视化 安装了!
去掉对勾 下一步
在这里插入图片描述
**点击 YES **
在这里插入图片描述

选择 最后一个 下一步
在这里插入图片描述
选择第一个 下一步
在这里插入图片描述
选择第二个 下一步
在这里插入图片描述
选择第一个 下一步
在这里插入图片描述
设置 密码 下一步 如果密码太简单 跳出页面 点击 YES
在这里插入图片描述
点击下一步
在这里插入图片描述
打上对勾 忽略全部 下一步
在这里插入图片描述
点击 yes 下一步
在这里插入图片描述
点击 install 安装
在这里插入图片描述
安装过程中 会报错

在这里插入图片描述
解决方法

进入  cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/ctx/lib  
修改文件 
vim ins_ctx.mk

在这里插入图片描述
修改这个地方
在这里插入图片描述
改成

ctxhx: $(CTXHXOBJ)
      -static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/stdc.a

保存退出!
在这里插入图片描述

点击Retry继续安装 注意 点击Retry 之后 加载一会还会报错

在这里插入图片描述
接着又提示 ”Error in invoking target ‘agent nmhs’ of makefile

在这里插入图片描述
解决方法:在makefile中添加链接libnnz11库的参数

来到 lib 目录 注意 !!!和上面的lib目录不一样!!!!
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/sysman/lib
修改
vim ins_emagent.mk

在这里插入图片描述
在这里插入图片描述
改成

$(MK_EMAGENT_NMECTL) -lnnz11

保存退出!

在这里插入图片描述
继续安装!
在这里插入图片描述

慢慢等待!
在这里插入图片描述
继续等待!
在这里插入图片描述

点击 ok
在这里插入图片描述

点击 yes
在这里插入图片描述
安装完成 关闭!
在这里插入图片描述

六、配置环境变量!

切换到 oracle用户
su - oracle
配置 .bash_profile
vim ~/.bash_profile
写入:
export ORACLE_BASH=/home/oracle 
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1
export ORACLE_UNQNAME=wzy
export ORACLE_SID=wzy
export PATH=$ORACLE_HOME/bin:$PATH
保存退出!
source ~/.bash_profile
env | grep ORACLE  执行完会显示如下:
ORACLE_UNQNAME=wzy
ORACLE_SID=wzy
ORACLE_BASH=/home/oracle
ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1

在这里插入图片描述
在这里插入图片描述

启动监听:lsnrctl start

在这里插入图片描述

输入:
sqlplus /nolog

在这里插入图片描述

输入:
conn sys/你的oracle密码@orcl as sysdba

比如:输入:conn sys/root@orcl as sysdba root就是密码,其他不用改!
其中,orcl是实例名,root是它的密码。如果出现下图所示的“Connected.”则连接成功,说明数据库建立成功。
oracle的配置
1、创建表空间
打开终端,输入:su - oracle
输入密码:
输入:sqlplus “/as sysdba” (此处是用dba身份登录数据库,系统的超级用户)
创建临时表空间:
create temporary tablespace table_test tempfile '/data/oracle/table_test.dbf ' 点击Enter
size 1024m 点击Enter
autoextend on 点击Enter
next 100m maxsize 10240m 点击Enter
extent management local; 点击Enter
说明:
1) table_test是临时表空间的名字
2) /data/oracle/table_test.dbf是在/data/oracle下建一个名为table_test.dbf的表(注意:单引号为英文状态下的输入),
3) 1024m是表空间初始大小,
4) 100m是表空间自动增长大小,
5) 10240m是表空间最大的大小。
2、创建数据表空间
create tablespace data logging datafile '/data/oracle/data.dbf' 点击Enter
size 1024m 点击Enter
autoextend on 点击Enter
next 100m maxsize 10240m 点击Enter
extent management local; 点击Enter
3、创建用户并指定表空间
create user data identified by 123 default tablespace data temporary tablespacetable_test;
其中data为用户名,123为用户密码,table_test是临时表空间的名字。
4、给用户授予权限
grant dba to data;
至此,oracle在centos7下的安装和配置也就完成了,别人已经可以访问你的数据库了

真tm不容易啊!

热门文章

暂无图片
编程学习 ·

Java输出数组的内容

Java输出数组的内容_一万个小时-CSDN博客_java打印数组内容1. 输出内容最常见的方式// List<String>类型的列表List<String> list new ArrayList<String>();list.add("First");list.add("Second");list.add("Third");list.ad…
暂无图片
编程学习 ·

母螳螂的“魅惑之术”

在它们对大蝗虫发起进攻的时候&#xff0c;我认认真真地观察了一次&#xff0c;因为它们突然像触电一样浑身痉挛起来&#xff0c;警觉地面对限前这个大家伙&#xff0c;然后放下自己优雅的身段和祈祷的双手&#xff0c;摆出了一个可怕的姿势。我被眼前的一幕吓到了&#xff0c;…
暂无图片
编程学习 ·

疯狂填词 mad_libs 第9章9.9.2

#win7 python3.7.0 import os,reos.chdir(d:\documents\program_language) file1open(.\疯狂填词_d9z9d2_r.txt) file2open(.\疯狂填词_d9z9d2_w.txt,w) words[ADJECTIVE,NOUN,VERB,NOUN] str1file1.read()#方法1 for word in words :word_replaceinput(fEnter a {word} :)str1…
暂无图片
编程学习 ·

HBASE 高可用

为了保证HBASE是高可用的,所依赖的HDFS和zookeeper也要是高可用的. 通过参数hbase.rootdir指定了连接到Hadoop的地址,mycluster表示为Hadoop的集群. HBASE本身的高可用很简单,只要在一个健康的集群其他节点通过命令 hbase-daemon.sh start master启动一个Hmaster进程,这个Hmast…
暂无图片
编程学习 ·

js事件操作语法

一、事件的绑定语法 语法形式1 事件监听 标签对象.addEventListener(click,function(){}); 语法形式2 on语法绑定 标签对象.onclick function(){} on语法是通过 等于赋值绑定的事件处理函数 , 等于赋值本质上执行的是覆盖赋值,后赋值的数据会覆盖之前存储的数据,也就是on…
暂无图片
编程学习 ·

Photoshop插件--晕影动态--选区--脚本开发--PS插件

文章目录1.插件界面2.关键代码2.1 选区2.2 动态晕影3.作者寄语PS是一款栅格图像编辑软件&#xff0c;具有许多强大的功能&#xff0c;本文演示如何通过脚本实现晕影动态和选区相关功能&#xff0c;展示从互联网收集而来的一个小插件&#xff0c;供大家学习交流&#xff0c;请勿…
暂无图片
编程学习 ·

vs LNK1104 无法打开文件“xxx.obj”

写在前面&#xff1a; 向大家推荐两本新书&#xff0c;《深度学习计算机视觉实战》和《学习OpenCV4&#xff1a;基于Python的算法实战》。 《深度学习计算机视觉实战》讲了计算机视觉理论基础&#xff0c;讲了案例项目&#xff0c;讲了模型部署&#xff0c;这些项目学会之后可以…
暂无图片
编程学习 ·

工业元宇宙的定义与实施路线图

工业元宇宙的定义与实施路线图 李正海 1 工业元宇宙 给大家做一个关于工业元宇宙的定义。对于工业&#xff0c;从设计的角度来讲&#xff0c;现在的设计人员已经做到了普遍的三维设计&#xff0c;但是进入元宇宙时代&#xff0c;就不仅仅只是三维设计了&#xff0c;我们的目…
暂无图片
编程学习 ·

【leectode 2022.1.15】完成一半题目

有 N 位扣友参加了微软与力扣举办了「以扣会友」线下活动。主办方提供了 2*N 道题目&#xff0c;整型数组 questions 中每个数字对应了每道题目所涉及的知识点类型。 若每位扣友选择不同的一题&#xff0c;请返回被选的 N 道题目至少包含多少种知识点类型。 示例 1&#xff1a…
暂无图片
编程学习 ·

js 面试题总结

一、js原型与原型链 1. prototype 每个函数都有一个prototype属性&#xff0c;被称为显示原型 2._ _proto_ _ 每个实例对象都会有_ _proto_ _属性,其被称为隐式原型 每一个实例对象的隐式原型_ _proto_ _属性指向自身构造函数的显式原型prototype 3. constructor 每个prot…
暂无图片
编程学习 ·

java练习代码

打印自定义行数的空心菱形练习代码如下 import java.util.Scanner; public class daYinLengXing{public static void main(String[] args) {System.out.println("请输入行数");Scanner myScanner new Scanner(System.in);int g myScanner.nextInt();int num g%2;//…
暂无图片
编程学习 ·

RocketMQ-什么是死信队列?怎么解决

目录 什么是死信队列 死信队列的特征 死信消息的处理 什么是死信队列 当一条消息初次消费失败&#xff0c;消息队列会自动进行消费重试&#xff1b;达到最大重试次数后&#xff0c;若消费依然失败&#xff0c;则表明消费者在正常情况下无法正确地消费该消息&#xff0c;此时…
暂无图片
编程学习 ·

项目 cg day04

第4章 lua、Canal实现广告缓存 学习目标 Lua介绍 Lua语法 输出、变量定义、数据类型、流程控制(if..)、循环操作、函数、表(数组)、模块OpenResty介绍(理解配置) 封装了Nginx&#xff0c;并且提供了Lua扩展&#xff0c;大大提升了Nginx对并发处理的能&#xff0c;10K-1000K Lu…
暂无图片
编程学习 ·

输出三角形

#include <stdio.h> int main() { int i,j; for(i0;i<5;i) { for(j0;j<i;j) { printf("*"); } printf("\n"); } }
暂无图片
编程学习 ·

stm32的BOOTLOADER学习1

序言 最近计划学习stm32的BOOTLOADER学习,把学习过程记录下来 因为现在网上STM32C8T6还是比较贵的,根据我的需求flash空间小一些也可以,所以我决定使用stm32c6t6.这个芯片的空间是32kb的。 #熟悉芯片内部的空间地址 1、flash ROM&#xff1a; 大小32KB&#xff0c;范围&#xf…
暂无图片
编程学习 ·

通过awk和shell来限制IP多次访问之学不会你打死我

学不会你打死我 今天我们用shell脚本&#xff0c;awk工具来分析日志来判断是否存在扫描器来进行破解网站密码——限制访问次数过多的IP地址&#xff0c;通过Iptables来进行限制。代码在末尾 首先我们要先查看日志的格式&#xff0c;分析出我们需要筛选的内容&#xff0c;日志…
暂无图片
编程学习 ·

Python - 如何像程序员一样思考

在为计算机编写程序之前&#xff0c;您必须学会如何像程序员一样思考。学习像程序员一样思考对任何学生都很有价值。以下步骤可帮助任何人学习编码并了解计算机科学的价值——即使他们不打算成为计算机科学家。 顾名思义&#xff0c;Python经常被想要学习编程的人用作第一语言…
暂无图片
编程学习 ·

蓝桥杯python-数字三角形

问题描述 虽然我前后用了三种做法&#xff0c;但是我发现只有“优化思路_1”可以通过蓝桥杯官网中的测评&#xff0c;但是如果用c/c的话&#xff0c;每个都通得过&#xff0c;足以可见python的效率之低&#xff08;但耐不住人家好用啊&#xff08;哭笑&#xff09;&#xff09…