我在测试甲骨文数据库的坑 需要使用老版本,19c, 而免费版只有最新版。(免费版23ia直接安装虚拟机没这个问题)
安装 Oracle DB Enterprise Edition 19c
所以需要CentOS7.9 (或Rocky 8.10) 以及下载两个rpm文件 一个是preinstall也就是安装前要求, 一个是database-ee。
database-ee需要登录下载,本地登录oracle官网后点击下载后获得链接,然后复制链接到我的linux机器再wget。 网络上有共享甲骨文账号。
使用rpm安装后位置为/opt/oracle/pruduct/19c(会自动创建oracle用户名) 使用ZIP解压缩方式则不会。 有两种方式,一种是使用/etc/init.d/oracledb_ORCLCDB-19c configure 另一种,使用桌面模式运行./runInstaller (/opt/oracle/pruduct/19c/dbhome_1下) 虽然表面上都安装好,但是即使下载了instantclient-basic-linux.x64-19.23.0.0.0dbru.zip和SQLPlus工具instantclient-sqlplus-linux.x64-19.23.0.0.0dbru.zip并配置在/opt/oracle/instantclient, 再通过.bash_profile设置好变量,在运行连接的时候会报错。甚至报错是出现有错误代码没有错误代码的内容。网络上说是缺失文件导致的。
放弃。
安装19c 容器版
使用Container版:需要docker pull container-registry.oracle.com。并且需要登录并创建Auth Token,不能使用docker login输入用户名密码。而是输入用户名和Auth Token。
你可能会遇到以下错误,container library initialization failed - unable to allocate file descriptor table - out of memory/opt/oracle/createDB.sh 这是因为你需要设置ulimit才可以。
另外opt/oracle/oradata这个文件夹需要这个容器内的用户有权写否则会报错,我这里设置为777.
命令: docker run –ulimit nofile=1024 -d –name testdb -e ORACLE_PWD=Good2024 -p 1521:1521 -p 5500:5500 -v /opt/oracle/oradata:/opt/oracle/oradata container-registry.oracle.com/database/enterprise:19.3.0.0
1521是数据库端口,5500是EM Express网页管理端口。
太麻烦了,本项目放弃。还是mySQL, PostgreSQL好。
参考链接:https://ahmedbaraka.com/download/video-tutorials/Installing and Creating an Oracle Database 19c on Linux 7.pdf