【问题标题】:ORACLE 18c in CentOs 7 "Unable to check for available memory"CentOs 7 中的 ORACLE 18c“无法检查可用内存”
【发布时间】:2019-02-04 12:15:50
【问题描述】:

我下载并上传到服务器:

1// oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm

2// oracle-database-xe-18c-1.0-1.x86_64.rpm

跑完之后

yum -y localinstall oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm

一切都好,没问题;跑完之后:

rpm -i oracle-database-xe-18c-1.0-1.x86_64.rpm

一切正常,结果没有问题:

[root@server 000]# rpm -i oracle-database-xe-18c-1.0-1.x86_64.rpm
warning: oracle-database-xe-18c-1.0-1.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
[INFO] Executing post installation scripts...
[INFO] Oracle home installed successfully and ready to be configured.
To configure Oracle Database XE, optionally modify the parameters in '/etc/sysconfig/oracle-xe-18c.conf' and then execute '/etc/init.d/oracle-xe-18c configure' as root.
[root@server 000]#

然后我去“运行最后一行”,但是当我运行时

/etc/init.d/oracle-xe-18c configure

在具有 4 GB RAM 的服务器中,结果是:

Unable to check for available memory

然后我转到内存为 8GB 的​​其他服务器,当我运行时:

/etc/init.d/oracle-xe-18c configure

在具有 8 GB RAM 的服务器中,结果是:

Unable to check for available memory

在两个服务器中的消息是:

Unable to check for available memory

在两台服务器中:

[root@server 000]# cat /etc/system-release;
CentOS Linux release 7.6.1810 (Core)
[root@server 000]#

我也将默认 [false] 更改为 [true]:

SKIP_VALIDATIONS=true

/etc/sysconfig/oracle-xe-18c.conf

我能做些什么来解决这个问题?

这是专用服务器,没有 VPS

感谢您的帮助

【问题讨论】:

  • jspcal 我很困惑我得到-bash: dbca: command not found 当我运行时 dbca -createDatabase -silent -gdbName ora18c -templateName General_Purpose.dbc -sysPassword sys123 -systemPassword sys123 -dbsnmpPassword sys123 -datafileDestination /u01/oradata -storageType FS -memoryPercentage 20 -emConfiguration NONE -sampleSchema false -J-Doracle.assistants.dbca.validate.ConfigurationParams=false 我得到 [root@server ~]# -bash: dbca: command not found[root@server ~]#

标签: oracle


【解决方案1】:

无法检查可用内存

我固定在这种形式:

我使用 OLD 安装 Oracle(运行良好的 Oracle 11g)转到我的另一台服务器,然后找到 3 个文件:

oracle_env.csh    
oracle_env.sh    
nls_lang.sh

因为这个文件不存在在新服务器中,我创建并放入文件夹 Oracle:

/opt/oracle/product/18c/dbhomeXE/bin

将内容(路径正确)放入文件中

  1. oracle_env.csh
  2. oracle_env.sh

并将这些行放入其中:

touch /opt/oracle/product/18c/dbhomeXE/bin/oracle_env.csh
echo 'setenv ORACLE_HOME /opt/oracle/product/18c/dbhomeXE
setenv ORACLE_SID XE
setenv NLS_LANG `$ORACLE_HOME/bin/nls_lang.sh`
setenv PATH $ORACLE_HOME/bin:$PATH' >> /opt/oracle/product/18c/dbhomeXE/bin/oracle_env.csh

第二个文件之后:

touch /opt/oracle/product/18c/dbhomeXE/bin/oracle_env.sh
echo 'export ORACLE_HOME=/opt/oracle/product/18c/dbhomeXE
export ORACLE_SID=XE
export NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`
export PATH=$ORACLE_HOME/bin:$PATH' >> /opt/oracle/product/18c/dbhomeXE/bin/oracle_env.sh

因为文件nls_lang.sh很长,并且有很多关于CHARSET的配置,我从旧服务器复制到新服务器。

之后是此文件的必要配置所有者/组:

chown oracle:oinstall /opt/oracle/product/18c/dbhomeXE/bin/oracle_env.csh
chown oracle:oinstall /opt/oracle/product/18c/dbhomeXE/bin/oracle_env.sh
chown oracle:oinstall /opt/oracle/product/18c/dbhomeXE/bin/nls_lang.sh

nls_lang.sh 文件也需要 755:

chmod 0755 /opt/oracle/product/18c/dbhomeXE/bin/nls_lang.sh

是否需要以 oracle 用户身份登录:

su -l oracle

然后我转到文件夹并加载 vars 环境:

cd /opt/oracle/product/18c/dbhomeXE/bin
. ./oracle_env.sh

终于可以运行命令dbca

dbca -createDatabase -silent -gdbName ora18c -templateName XE_Database.dbc -sysPassword YourPWD1 -systemPassword YourPWD1 -dbsnmpPassword YourPWD1 -datafileDestination /opt/oracle/oradata -storageType FS -memoryPercentage 20 -emConfiguration NONE -sampleSchema false -J-Doracle.assistants.dbca.validate.ConfigurationParams=false

我得到了很好的结果:

[server@petro bin]$ dbca -createDatabase -silent -gdbName ora18c -templateName XE_Database.dbc -sysPassword YourPWD1 -systemPassword YourPWD1 -dbsnmpPassword YourPWD1 -datafileDestination /opt/oracle/oradata -storageType FS -memoryPercentage 20 -emConfiguration NONE -sampleSchema false -J-Doracle.assistants.dbca.validate.ConfigurationParams=false
Prepare for db operation
10% complete
Copying database files
40% complete
Creating and starting Oracle instance
42% complete
46% complete
50% complete
54% complete
60% complete
Completing Database Creation
66% complete
69% complete
70% complete
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
/opt/oracle/cfgtoollogs/dbca/ora18c.
Database Information:
Global Database Name:ora18c
System Identifier(SID):ora18c
Look at the log file "/opt/oracle/cfgtoollogs/dbca/ora18c/ora18c.log" for further details.
[server@petro bin]$

因为我在这个服务器中需要 PHP,所以我需要 OCI8,然后我运行:

/usr/bin/ea-php72-pecl install oci8
/usr/bin/ea-php71-pecl install oci8
/usr/bin/ea-php70-pecl install oci8

当这个请求时:

**Please provide the path to the ORACLE_HOME directory. Use 'instantclient,/path/to/instant/client/lib' if you're compiling with Oracle Instant Client [autodetect] :**

只需 [ENTER] 然后这对我来说运行良好...

问候。

【讨论】:

  • Oracle 18c XE 现在使用与企业版相同的配置文件/usr/local/bin/oraenv/usr/local/bin/coraenv。这就是不再包含 oracle_env.* 的原因。
猜你喜欢
  • 1970-01-01
  • 2020-08-12
  • 1970-01-01
  • 2016-04-22
  • 2020-09-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-23
相关资源
最近更新 更多