我从oracle 下载链接。我查看了文档并按照所述执行了每个步骤,但现在当我尝试运行时:-
. runInstaller
在我的终端上,它抛出了上述错误,因此无法安装 oracle。我相信我已经根据我的 ubuntu 下载了正确的 oracle。
uname -a
:
Linux reddevil 4.8.0-22-generic #24-Ubuntu SMP Sat Oct 8 09:15:00 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
file runInstaller
:
runInstaller: POSIX shell script, ASCII text executable, with very long lines
我有 ubuntu 16.10
此外,网站/YouTube 上的大多数 Oracle 安装指南都位于rpm 包但是在 oracle 下载网站上有以 zip 格式打包的文件,为什么?
答案1
跟随本指南用于在 Ubuntu 中安装 Oracle 11g。运行完美。
1)下载Oracle数据库快速版
下载适用于 Linux x64 的 Oracle Database Express Edition 11g 第 2 版。
2). 按照安装前的说明进行操作:
a)打开下载文件的终端并使用以下命令解压:
unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
b)使用以下命令安装所需的软件包:
sudo apt-get install alien libaio1 unixodbc
c) 使用以下命令将 RPM 包格式转换为 DEB 包格式(Ubuntu 使用的):
sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
d) 使用以下命令创建所需的 chkconfig 脚本:
sudo pico /sbin/chkconfig
pico 文本编辑器启动后,命令显示在屏幕底部。现在将以下内容复制并粘贴到文件中并保存:
#!/bin/bash
# Oracle 11gR2 XE installer chkconfig hack for Ubuntu
file=/etc/init.d/oracle-xe
if [[ ! `tail -n1 $file | grep INIT` ]]; then
echo >> $file
echo '### BEGIN INIT INFO' >> $file
echo '# Provides: OracleXE' >> $file
echo '# Required-Start: $remote_fs $syslog' >> $file
echo '# Required-Stop: $remote_fs $syslog' >> $file
echo '# Default-Start: 2 3 4 5' >> $file
echo '# Default-Stop: 0 1 6' >> $file
echo '# Short-Description: Oracle 11g Express Edition' >> $file
echo '### END INIT INFO' >> $file
fi
update-rc.d oracle-xe defaults 80 01
e) 使用以下命令更改 chkconfig 文件的权限:
sudo mod 755 /sbin/chkconfig
f) 设置内核参数。Oracle 11gR2 XE 需要额外的内核参数,您需要使用以下命令进行设置:
sudo pico /etc/sysctl.d/60-oracle.conf
将以下内容复制到文件中并保存:
# Oracle 11g XE kernel parameters
fs.file-max=6815744
net.ipv4.ip_local_port_range=9000 65000
kernel.sem=250 32000 100 128
kernel.shmmax=536870912
g) 使用以下命令验证更改:
sudo cat /etc/sysctl.d/60-oracle.conf
h) 您应该会看到之前输入的内容。现在加载内核参数:
sudo service procps start
i) 使用以下命令验证新参数是否已加载:
sudo sysctl -q fs.file-max
j) 您应该会看到先前输入的 file-max 值。设置/dev/shm
Oracle 的挂载点。使用以下命令创建以下文件:
sudo pico /etc/rc2.d/S01shm_load
k) 将以下内容复制到文件中并保存。
#!/bin/sh
case "$1" in
start) mkdir /var/lock/subsys 2>/dev/null
touch /var/lock/subsys/listener
rm /dev/shm 2>/dev/null
mkdir /dev/shm 2>/dev/null
mount -t tmpfs shmfs -o size=2048m /dev/shm ;;
*) echo error
exit 1 ;;
esac
l)使用以下命令更改文件的权限:
sudo chmod 755 /etc/rc2.d/S01shm_load
m)执行以下命令:
sudo ln -s /usr/bin/awk /bin/awk
sudo mkdir /var/lock/subsys
sudo touch /var/lock/subsys/listener
n)使用以下命令安装 Oracle DBMS:
sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
o) 使用以下命令配置 Oracle:
sudo /etc/init.d/oracle-xe configure
输入以下信息: Oracle Application Express 的有效 HTTP 端口(默认值为 8080) Oracle 数据库侦听器的有效端口(默认值为 1521) SYS 和 SYSTEM 管理用户帐户的密码 确认 SYS 和 SYSTEM 管理用户帐户的密码 是否希望数据库在计算机启动时(下次重新启动)自动启动。
p) 通过编辑 .bashrc 文件设置环境变量:
pico ~/.bashrc
将以下行添加到文件末尾:
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
export ORACLE_SID=XE
export NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`
export ORACLE_BASE=/u01/app/oracle
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$PATH
q)通过执行您的配置文件来加载更改:
. ~/.profile
r)启动Oracle 11gR2 XE:
sudo service oracle-xe start
s)使用命令将用户 YOURUSERNAME 添加到组 dba
sudo usermod -a -G dba YOURUSERNAME
t) 使用以下命令启动 Oracle XE 11gR2 服务器:
sudo service oracle-xe start
u)以系统管理员身份使用以下命令启动命令行 shell:
sqlplus sys as sysdba
输入之前配置 Oracle 时提供的密码。现在您将进入一个仅能理解 SQL 命令的 SQL 环境。
使用 SQL 命令在 Oracle 中创建常规用户帐户:
create user USERNAME identified by PASSWORD;
将 USERNAME 和 PASSWORD 替换为您选择的用户名和密码。请记住此用户名和密码。如果您在执行上述操作时出错并出现有关 resetlogs 的消息,请执行以下 SQL 命令并重试:
alter database open resetlogs
使用 SQL 命令向用户帐户授予权限:
grant connect, resource to USERNAME;
将 USERNAME 和 PASSWORD 替换为您选择的用户名和密码。请记住此用户名和密码。使用 SQL 命令退出 sysadmin shell:exit; 使用以下命令以普通用户身份启动命令行 shell:
sqlplus
系统将提示您输入用户名和密码。通过身份验证后,您将能够输入标准 SQL 命令