安装环境

系统:Fedora 25 Workstation x86_64
数据库:Oracle 11.2.0.4
硬件环境:Intel Core I7 6700K/16G/2T

安装操作系统

  • 安装语言选英文
  • 硬盘手动分区,swap空间不能低于16G
  • 安装结束并执行以下命令,后面的操作可由ssh远程完成
1
2
3
4
systemctl stop firewalld
systemctl disable firewalld
systemctl enable sshd.service
systemctl start sshd.service

数据库安装前的准备

vi /etc/hosts

1
服务器IP dwsoft dwsoft

vi /etc/hostname

1
dwsoft

vi /etc/sysctl.conf

1
2
3
4
5
6
7
8
9
10
11
12
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586

/sbin/sysctl -p
vi /etc/security/limits.conf

1
2
3
4
5
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 4096
oracle hard nofile 65536
oracle soft stack 10240

vi /etc/pam.d/login

1
session required pam_limits.so

vi /etc/selinux/config

1
SELINUX=permissive

reboot

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
dnf groupinstall "Development Tools" -y
dnf groupinstall "Administration Tools" -y
dnf groupinstall "System Tools" -y
dnf install binutils -y
dnf install compat-libstdc++-33 -y
dnf install compat-libstdc++-33.i686 -y
dnf install elfutils-libelf -y
dnf install elfutils-libelf-devel -y
dnf install gcc -y
dnf install gcc-c++ -y
dnf install glibc -y
dnf install glibc.i686 -y
dnf install glibc-common -y
dnf install glibc-devel -y
dnf install glibc-headers -y
dnf install glibc-devel.i686 -y
dnf install ksh -y
dnf install libaio -y
dnf install libaio.i686 -y
dnf install libaio-devel -y
dnf install libaio-devel.i686 -y
dnf install libgcc -y
dnf install libgcc.i686 -y
dnf install libstdc++ -y
dnf install libstdc++.i686 -y
dnf install libstdc++-devel -y
dnf install make -y
dnf install numactl -y
dnf install numactl-devel -y
dnf install sysstat -y
dnf install unixODBC -y
dnf install unixODBC.i686 -y
dnf install unixODBC-devel -y
dnf install unixODBC-devel.i686 -y
dnf install elfutils-libelf-devel -y
groupadd oinstall
groupadd dba
groupadd oper
groupadd asmadmin
useradd -g oinstall -G dba,oper,asmadmin oracle
passwd oracle
mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1
chown -R oracle:oinstall /u01
chmod -R 775 /u01

vi /etc/redhat-release

1
redhat release 6

su - oracle
vi /home/oracle/.bash_profile

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=dwsoft; export ORACLE_HOSTNAME
ORACLE_UNQNAME=orcl; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

source /home/oracle/.bash_profile

1
2
3
4
5
6
7
unzip -q p13390677_112040_Linux-x86-64_1of7.zip
unzip -q p13390677_112040_Linux-x86-64_2of7.zip
unzip -q p13390677_112040_Linux-x86-64_3of7.zip
unzip -q p13390677_112040_Linux-x86-64_4of7.zip
unzip -q p13390677_112040_Linux-x86-64_5of7.zip
unzip -q p13390677_112040_Linux-x86-64_6of7.zip
unzip -q p13390677_112040_Linux-x86-64_7of7.zip

DISPLAY=你的IP:0.0; export DISPLAY
xhost +你的IP

DISPLAY=192.168.1.104:0.0; export DISPLAY;xhost +192.168.1.104

$./database/runInstaller

  • 安装到”Link binaries”时如果遇到错误(提示makefile …. ins_emagent.mk),执行下面的脚本

$sed -i 's/^\(\s*\$(MK_EMAGENT_NMECTL)\)\s*$/\1 -lnnz11/g' $ORACLE_HOME/sysman/lib/ins_emagent.mk

###安装结束后的工作###

vi /etc/redhat-release

1
Fedora release 25 (Twenty Five)
  • 至此Oracle的安装工作完成

附录

  • 启动Oracle
1
2
3
4
5
6
$sqlplus / as sysdba
SQL> startup
SQL> (Ctrl+D)
$lsnrctl start
$emctl start dbconsole
  • 查看service_name
1
2
3
$sqlplus / as sysdba
SQL> select value from v$parameter where name='service_names';
  • 测试数据库连接
1
sqlplus SYSTEM/密码@服务器IP:1521/orcl
  • 查询数据库字符集

select userenv(‘language’) from dual;

  • 中文乱码

    1
    2
    3
    $ vi ~/.bash_profile
    export LANG=en
  • 挂载U盘,复制压缩包,先用 fdisk -l 确认U盘的设备名,例如/dev/sdb1

    1
    2
    3
    4
    5
    #mkdir /mnt/usb
    #mount /dev/sdb1 /mnt/usb
    $cd ~
    $cp /mnt/usb/*.zip .
  • 系统安装镜像下载地址

https://download.fedoraproject.org/pub/fedora/linux/releases/25/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-25-1.3.iso

  • U盘安装制作工具

https://rufus.akeo.ie/downloads/rufus-2.11.exe

  • 安装文件校验码 新下载的系统镜像和安装包请做SHA校验确认完整性后使用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Fedora-Workstation-Live-x86_64-25-1.3.iso
SHA-256=818017f42a2741cfaf20e94aecf6a63d1b995abfdaff5917df7218d0d89976a7
p13390677_112040_Linux-x86-64_7of7.zip
SHA-1=B23A8CED6D47664F20C116ABA9A2C77D65B2DD6D
MD5=CE5D4820B5CF01E70ECFB2078078EBEF
p13390677_112040_Linux-x86-64_6of7.zip
SHA-1=79533E2FF40664A4640616BD559903ED616F2633
MD5=2DB69CD15DB335758228D91182263C5E
p13390677_112040_Linux-x86-64_5of7.zip
SHA-1=8D68764AB38804A9B9C9E80BF5AE0F3D6C397151
MD5=A5B610B8B8B839DFF36102E2BB658DDD
p13390677_112040_Linux-x86-64_4of7.zip
SHA-1 1ACF8F785313D3C5CF631A0077416C22348B9DF8
MD5=18B988B1450DDBA102D557DFF80D7ABE
p13390677_112040_Linux-x86-64_3of7.zip
SHA-1 8C0CD2D7BB2DD73E965A90CD053828D7A52AE7E7
MD5=04CEF37991DB18F8190F7D4A19B26912
p13390677_112040_Linux-x86-64_2of7.zip
SHA-1 2E628D8CAC5D1C6FFF15E728B1F227747BF2DED8
MD5=67BA1E68A4F581B305885114768443D3
p13390677_112040_Linux-x86-64_1of7.zip
SHA-1 983461D6442B0833630475EC4885278588585651
MD5=1616F61789891A56EAFD40DE79F58F28
  • 默认启动至命令行模式
1
2
3
systemctl set-default multi-user.target
systemctl isolate multi-user.target
systemctl isolate graphical.target
  • 本地PL/SQL Developer连接远程ORACLE
1
2
3
4
5
6
7
8
DWSOFT =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 服务器IP)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)