centos安装Java环境和oracle数据库

2023-05-16

centos7安装Java开发环境及oracle踩坑系列

  • centos7安装jdk和redis
    • jdk安装
    • Redis安装
      • Redis自启动
    • centos7中的oracle安装
      • 踩坑位置
      • oracle自启动设置

centos7安装jdk和redis

jdk安装

参考该文献:https://blog.csdn.net/weixin_56814370/article/details/123387785

Redis安装

Linux 源码安装
下载地址:http://redis.io/download,下载最新稳定版本。

本教程使用的最新文档版本为 2.8.17,下载并安装:

# wget http://download.redis.io/releases/redis-6.0.8.tar.gz
# tar xzf redis-6.0.8.tar.gz
# cd redis-6.0.8
# make

执行完 make 命令后,redis-6.0.8 的 src 目录下会出现编译后的 redis 服务程序 redis-server,还有用于测试的客户端程序 redis-cli:

下面启动 redis 服务:

# cd src
# ./redis-server

注意这种方式启动 redis 使用的是默认配置。也可以通过启动参数告诉 redis 使用指定配置文件使用下面命令启动。

# cd src
# ./redis-server ../redis.conf

redis.conf 是一个默认的配置文件。我们可以根据需要使用自己的配置文件。

启动 redis 服务进程后,就可以使用测试客户端程序 redis-cli 和 redis 服务交互了。 比如:

# cd src
# ./redis-cli
redis> set foo bar
OK
redis> get foo
"bar"

在linux下安装完redis后,需要设置密码的朋友,在redis.config中requirepass属性后面添加密码即可。

Redis自启动

在linux下安装完redis后,在虚拟机中运行相关项目的童鞋们,在关机后redis进程随着再次开机需要重新启动,故,redis自启会起到更自动化的作用,下面提供自启动的方法:
1、配置redis.config文件:
设置redis.conf中daemonize为yes,确保守护进程开启。
注:找不到redis.config文件的用户运用如下命令可寻找:

find / -name redis.conf

当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,查看配置文件的默认路径(记住这个路径,一会要用)。

编写开机自启动脚本

#!/bin/bash
# chkconfig:   2345 90 10
# description:  Redis is a persistent key-value database
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379
# 如果不知道redis-server,redis-cli命令在哪里,通过find / -name redis-server/redis-cli 查找
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_6379.pid
CONF="/opt/redis-6.0.8/redis.conf"
AUTH="123456"
case "$1" in
        start)
                if [ -f $PIDFILE ]
                then
                        echo "$PIDFILE exists, process is already running or crashed."  
                else
                        echo "Starting Redis server..."  
                        $EXEC $CONF   &
                fi
                if [ "$?"="0" ]
                then
                        echo "Redis is running..."  
                fi
                ;;
        stop)
                if [ ! -f $PIDFILE ]
                then
                        echo "$PIDFILE exists, process is not running."  
                else
                        PID=$(cat $PIDFILE)
                        echo "Stopping..."  
                       $REDIS_CLI -p $REDISPORT  SHUTDOWN
                        sleep 2
                       while [ -x $PIDFILE ]   
                       do
                                echo "Waiting for Redis to shutdown..."  
                               sleep 1
                        done
                        echo "Redis stopped"  
                fi
                ;;
        restart|force-reload)
                ${0} stop
                ${0} start
                ;;
        *)
               echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
                exit 1
esac

启动redis服务,测试

/etc/init.d/redis start

启动成功会提示如下信息:

Starting Redis server...
Redis is running...

设置开机自启动

chkconfig redis on

关机重启,查看redis服务,有没有自启动

ps -ef|grep redis

看到redis-server*:6379这个服务,就代表成功了。

centos7中的oracle安装

可视化界面安装参考如下文章:
https://blog.csdn.net/weixin_29789925/article/details/116311843

踩坑位置

1、首先在可视化界面中Installation location中关于software location的位置,在不同的安装总可能不会出现最后一级,即/dbhome_1,可手动创建,或者按照默认进行安装。
2、在Create Inventory安装位置时,默认的最后一级文件夹可能会产生乱码,则在当前位置创建文件夹乱码即可消失。
3、同时,在虚拟机中安装oracle,可能会产生点击下一步后没有反应的状况,可能的原因为在oracle用户安装下,新建的文件夹或者安装位置的权限没有给到oracle用户,则将权限进行轮转递归将文件夹及其下属所有文件权限归属oracle用户。
注:对于oracle的客户端字符编码,根据个人业务选择合适的编码方式,默认的编码方式为ZHS16GBK,如有特殊需求,可自行编辑,本人在项目中的字符编码方式为AL32UTF8,支持更好的中文。
4、安装完oracle后进行控制台启动过程中可能会产生ORACLE not available ORA-27101错误的错误,原因是多方面的:主要是oracle当前的服务不可用,shared memory realm does not exist,是因为oracle没有启动或没有正常启动,共享内存并没有分配给当前实例.所以,通过设置实例名,再用操作系统身份验证的方式,启动数据库。这样数据库就正常启动了,就不会报ORA-01034和ORA-27101两个启动异常了。

SQL>shutdown immediate;
SQL>startup;

将数据库服务启动即可解决。

5、最后可能你虚拟机的共享内存问题,看下数据库的配置文件是否对应了512M内存?还是你设置的大了,本身给的不足?

1.先看oracle的监听和oracle的服务是否都启动了。
启动oracle监听:cmd命令行窗口下,输入lsnrctl start,回车即启动监听。
2.查看oracle的sid叫什么,比如创建数据库的时候,实例名叫“orcl”,那么先手工设置一下oralce的sid,cmd命令窗口中,set ORACLE_SID=orcl
3.再输入sqlplus /nolog,回车
再输入 conn / as sysdba;回车
4.再输入startup,回车.这步是启动oracle服务。如果startup启动被告知已经启动了,可以先输入shutdown immediate;等shutdown结束之后,再输入startup。
5.过几秒钟等命令运行完成,就能连接了。这个时候,可以输入"select * from user_tables;"测试一下,看是否有查询结果。
如果出现上面查询结果,那说明基本已经成功了。此时返回PL/SQL客户端界面就可以成功登录。如果还是不行请尝试修改密码进行以下步骤

oracle自启动设置

[root@oracledb ~]# su - oracle
Last login: Tue Mar  1 14:45:37 CST 2022 on tty1
[oracle@oracledb ~]$ cd $ORACLE_HOME
[oracle@oracledb 11.2.0]$ pwd
/data/app/oracle/product/11.2.0
[oracle@oracledb bin]$ dbstart 
ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
Usage: ./dbstart ORACLE_HOME
#说明目前不能通过dbstart脚本知己启动Oracle
[oracle@oracledb bin]$ vi dbstart 
#编辑 dbstart,将ORACLE_HOME_LISTNER=$1修改成 ORACLE_HOME_LISTNER=$ORACLE_HOME 前提是$ORACLE_HOME环境设置正确,或者直接写绝对路径
[oracle@oracledb bin]$ vi /etc/oratab 
#asp:/data/app/oracle/product/11.2.0:N 改为 asp:/data/app/oracle/product/11.2.0:Y
#最后的Y作用:是否允许dbstart来启动数据库
[root@oracledb ~]# vi /etc/rc.d/rc.local 
#在rc.local文件后添加开机启动oracle脚本
su oracle -lc "/data/app/oracle/product/11.2.0/bin/lsnrctl start"
su oracle -lc /data/app/oracle/product/11.2.0/bin/dbstart

若重启为开启则查看文件是否有相应权限

ll /etc/rc.d/rc.local 

若没有权限则赋予权限

chmod +x rc.local
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

centos安装Java环境和oracle数据库 的相关文章

随机推荐

  • Linux下添加应用程序图标

    为没有快捷方式的程序生成快捷方式图标 以SecureCRT为例 生成 desktop图标 编辑文本文件 xff0c 命名为SecureCRT desktop 内容如下 xff1a Desktop Entry Name 61 SecureCR
  • 如何改变Debian桌面 或者 gnome桌面图标的大小

    要改变Debian桌面图标的size xff0c 我们在图标上点击右键 xff0c 会有一个stretch选项 xff0c 通过这个 xff0c 可以用托拽的方法 xff0c 一个一个来改变图标大小 但这个方法很费劲 xff0c 而且托拽的
  • gradle,gradle/wrapper,build.gradle区别

    1 gradle 跟 maven ant一样是构建工具 2 gradle wrapper Gradle Wrapper是Gradle项目的一部分 引入gradle wrapper xff0c 通过读取配置文件中gradle的版本 xff0c
  • AI一般是用来制作什么的

    AI一般用来制作logo 分页 xff0c 海报等等 面板堆栈的话就是很多功能堆放的位置 一般打印出来的话用cmyk模式 如果是在web端的话用RGB模式 xff0c 因为cmyk模式在你进行存储的过程中颜色可能会丢失 出血值就是在你打印东
  • NetworkX画图:nx.draw_networkx(函数详解)

    NetworkX画图 xff1a nx draw networkx 函数详解 draw networkx span class token punctuation span G span class token punctuation sp
  • 小程序代码构成

    了解项目的基本结构 1 pages xff1a 用来存放所有小程序的页面 2 utils xff1a 用来存放工具性质的模块 xff08 例如 xff1a 格式化事件的自定义模块 xff09 3 app js xff1a 小程序项目的入口文
  • 操作系统笔记

    第一章 xff1a 导论 1 计算机系统 的四个组成成分 xff1a 计算机硬件 操作系统 系统程序和用户 可以大致分为硬件 软件和数据 定义 xff1a 现代通用计算机系统由一个或多个CPU和若干设备控制器通过共同的总线相连而成 xff0
  • 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.1.2

    HP Socket 是一套通用的高性能 TCP UDP HTTP 通信框架 xff0c 包含服务端组件 客户端组件和 Agent 组件 xff0c 广泛适用于各种不同应用场景的 TCP UDP HTTP 通信系统 xff0c 提供 C C
  • java根据图片的url地址下载图片到本地

    java根据图片的url地址下载图片到本地 已知图片的url地址 xff0c 通过java代码下载到本地 xff0c 直接上代码 package demo import java io ByteArrayOutputStream impor
  • 【Android -- 动画】Lottie 动画的基本使用

    一 简介 Lottie 是 Airbnb 开源的一个面向 iOS Android React Native 的动画库 xff0c 能分析 Adobe After Effects 导出的动画 xff0c 并且能让原生 App 像使用静态素材一
  • 【Android Studio 使用教程】-- 配置 Kotlin

    简介 Kotlin 是一个基于 JVM 的新的编程语言 xff0c 由 JetBrains 开发 JetBrains xff0c 作为目前广受欢迎的 Java IDE IntelliJ 的提供商 xff0c 在 Apache 许可下已经开源
  • SSM框架整合教程(Spring+SpringMVC+MyBatis)

    SSM框架 1 ssm在各层中的作用 ssm框架与ssh框架类似 xff0c 使用springmvc代替strusts2 mybatis代替hibernate Spring xff1a 主要作用是依赖注入 控制反转以达到解耦的目的 xff0
  • 虚幻引擎VR游戏开发基础教程

    虚幻引擎VR游戏开发基础教程 了解如何使用 Oculus Quest 2 的蓝图在虚幻引擎 4 中从头开始构建基本的 VR 机制 课程英文名 xff1a Unreal Engine VR Development Fundamentals 此
  • 对于人工智能的认识,我们需要更深入全面的理解

    20世纪50年代以来 xff0c 计算机科学家们致力于研发与人类智能类似的程序 当这些程序被开发到一定水平后 xff0c 它们就可以在一些特定的应用场景中替代人类 它们被称为人工智能 xff08 AI xff09 和认知计算 20世纪80年
  • [技巧]如何使用Windows 10 1903中的Windows Sandbox沙箱功能

    微软计划在五月底向大家推送 Windows 10 1903 更新 xff0c 感兴趣的 Insider 测试者们已经可以通过预览通道 xff08 Release Preview Ring xff09 来获得这个最新版本 Windows 10
  • httprunner4.x问题: 运行testcase时, 调用的用例会运行两次

    httprunner4 x问题 运行testcase时 调用的用例会运行两次 问题描述 在测试用例脚本A中使用RunTestCase带参数调用其他api脚本B来构建测试用例时 发现每次运行用例都会有两次运行 产生两份运行日志 第一次 运行脚
  • httprunner中使用JMESPath进行数据提取技巧

    在使用httprunner时 其进行数据提取是使用JMESPath进行的 httprunner示例中的提取未涉及一些稍复杂的提取 所以专门学习了一下JMESPath的使用 做个总结 JMESPath 官方文档路径 https jmespat
  • 解决httprunner3.x上$符号无法当成普通符号用的方法

    前言 由于要测试的api中会涉及 符号的传递 要求其放在参数中当一个普通符号使用 但由于httprunner框架处理逻辑 会将如 coe当成一个变量 从而报错找不到该变量的值 现象 接口某参数为 coeConfig coal 08d99cc
  • 使用jmeter实现对jar包的调用

    一 前言 在我们测试接口的过程中 xff0c 可能有时需要用到第三方jar包来生成一些测试数据 xff08 如有时需要对参数的输入值使用第三方jar包进行加密操作 xff09 xff0c 涉及到这种的情况 xff0c 普遍做法是 xff1a
  • centos安装Java环境和oracle数据库

    centos7安装Java开发环境及oracle踩坑系列 centos7安装jdk和redisjdk安装Redis安装Redis自启动 centos7中的oracle安装踩坑位置oracle自启动设置 centos7安装jdk和redis