1 操作说明
虚拟机:Virtual Box
操作系统:CentOS 7
Oracle 版本:Oracle 11g 11.2.0.1.0
安装方式:静默安装
如果CentOS系统是最小化安装版本,需要用root用户安装以下软件
$yum install -y unzip vim
$yum -y install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel
2 添加硬盘
使用Virtual Box安装CentOS时,因为我选择了20G的硬盘空间,系统装上后,要安装Oracle数据库,存在空间不足的问题。
#使用df查看磁盘空间
$df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 17G 13G 4.5G 74% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 920M 0 920M 0% /dev/shm
tmpfs 920M 17M 903M 2% /run
tmpfs 920M 0 920M 0% /sys/fs/cgroup
/dev/sda1 1014M 178M 837M 18% /boot
tmpfs 184M 4.0K 184M 1% /run/user/42
tmpfs 184M 32K 184M 1% /run/user/1000
tmpfs 184M 0 184M 0% /run/user/0
2.1 为虚拟机分配硬盘
在Virtual Box中添加一块硬盘
这里添加了一块大小为8G的硬盘,启动Linux,查看硬盘情况。使用lsblk(list block device的缩写)命令,列出所有的存储设备。
$lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 8G 0 disk
sr0 11:0 1 1024M 0 rom
可以看出多了一块sdb的硬盘,不过目前我们还不能用它,要使用它,需要做以下几个步骤
- 分区,使用fdisk工具
- 格式化,使用mkfs.xfs工具
- 挂载
2.2 磁盘分区
因为我的sda磁盘使用的是MBR分区表格式,所以对sdb这块新添加的磁盘,我也将采用MBR分区,我没有尝试过一块磁盘是MBR(Master Boot Record),另一块磁盘是GPT(GUID Partition Table)的方式,所以这里还是将sdb用fdisk工具分区。
#查看sda磁盘的信息
$parted /dev/sda print
Model: ATA VBOX HARDDISK (scsi) //生产厂商与磁盘接口scsi
Disk /dev/sda: 21.5GB // 磁盘空间
Sector size (logical/physical): 512B/512B
Partition Table: msdos //使用的是MBR分区
Disk Flags:
Number Start End Size Type File system 标志
1 1049kB 1075MB 1074MB primary xfs 启动
2 1075MB 21.5GB 20.4GB primary lvm
这里需要要注意,如果使用MBR分区格式,请使用fdisk工具,如果要用GPT分区格式,使用gdisk工具,两者都操作步骤都差不多。
$fdisk /dev/sdb
# 欢迎使用 fdisk (util-linux 2.23.2)。
#
# 更改将停留在内存中,直到您决定将更改写入磁盘。使用写入命令前请三思。
#
# Device does not contain a recognized partition table
# 使用磁盘标识符 0x96a97997 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-16777215,默认为 2048):2048
Last 扇区, +扇区 or +size{K,M,G} (2048-16777215,默认为 16777215):
将使用默认值 16777215
分区 1 已设置为 Linux 类型,大小设为 8 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
对于fdisk的使用还是很简单的,需要注意的是,在你没有提交之前,所有的更改都是在内存中的,也就是说,你可以随意的分区,然后按q
命令,不保存你的操作。这里我将sdb整个磁盘划分成了一个分区,使用命令查看:
$lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 8G 0 disk
└─sdb1 8:17 0 8G 0 part
sr0 11:0 1 1024M 0 rom
可以看到sdb下多了一个类型为part的数据行,名为sdb1,它就是我们在sdb磁盘上的分区。
2.3 格式化分区
有了这个sdb1分区后需要对其格式化,使用命令mkfs(make filesystem),在CentOS 7中可以使用xfs的文件系统格式。
$mkfs.xfs /dev/sdb1
# meta-data=/dev/sdb1 isize=512 agcount=4, agsize=524224 blks
# = sectsz=512 attr=2, projid32bit=1
# = crc=1 finobt=0, sparse=0
# data = bsize=4096 blocks=2096896, imaxpct=25
# = sunit=0 swidth=0 blks
# naming =version 2 bsize=4096 ascii-ci=0 ftype=1
# log =internal log bsize=4096 blocks=2560, version=2
# = sectsz=512 sunit=0 blks, lazy-count=1
# realtime =none extsz=4096 blocks=0, rtextents=0
2.4 挂载
挂载sdb1分区
# 创建一个文件夹
$mkdir /data
# 将sdb1 挂载到 data目录下
$mount /dev/sdb1 /data/
$df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 17G 13G 4.5G 74% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 920M 0 920M 0% /dev/shm
tmpfs 920M 8.9M 911M 1% /run
tmpfs 920M 0 920M 0% /sys/fs/cgroup
/dev/sda1 1014M 178M 837M 18% /boot
tmpfs 184M 12K 184M 1% /run/user/42
tmpfs 184M 0 184M 0% /run/user/0
/dev/sdb1 8.0G 33M 8.0G 1% /data
使用df命令查看挂载情况,发现多了一个/dev/sdb1的记录,这表示我们已经将磁盘挂载到指定的目录了。
挂载完成后,需要设置开机自动挂载该磁盘,这里使用修改配置文件/etc/fstab
的方式
$vim /etc/fstab
/dev/sdb1 /data xfs defaults 0 0
将/dev/sdb1挂载到/data目录下,sdb1的格式是xfs
2.5 调整swap分区(补充)
在安装Oracle时,要求swap分区大于150M,检查swap分区大小
[root@CentOS7-srv2 ~]# free -h
total used free shared buff/cache available
Mem: 15G 353M 8.4G 8.7M 6.8G 14G
Swap: 0B 0B 0B
发现swap分区是没有空间的,再查看系统的磁盘情况
[root@CentOS7-srv2 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 253:0 0 40G 0 disk
└─vda1 253:1 0 40G 0 part /
vdb 253:16 0 500G 0 disk
系统有一块500G的数据盘未分配,于是我们将在这块未分配的数据盘上创建一个swap分区(如果没有数据盘,可以使用dd命令写入一个文件,并格式化)。
查看系统盘的分区格式:
[root@CentOS7-srv2 ~]# parted /dev/vda print
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 42.9GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos #使用的是MBR分区
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 42.9GB 42.9GB primary ext4 boot
因为系统盘是MBR分区,所以这里也MBR分区的方式对数据盘分区,对应的工具使用fdisk。
划分swap分区和数据盘分区
[root@CentOS7-srv2 ~]# fdisk /dev/vdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x3640a61d.
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-1048575999, default 2048): 2048
# 创建一个1G大小的分区,用于swap
Last sector, +sectors or +size{K,M,G} (2048-1048575999, default 1048575999): +1G
Partition 1 of type Linux and of size 1 GiB is set
Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): 1
Invalid partition type `1'
Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (2-4, default 2): 2
First sector (2099200-1048575999, default 2099200):
Using default value 2099200
# 将剩下的空间作为数据盘分区
Last sector, +sectors or +size{K,M,G} (2099200-1048575999, default 1048575999): 1048575999
Partition 2 of type Linux and of size 499 GiB is set
# 执行写入命令
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
完成分区后,查看磁盘情况:
[root@CentOS7-srv2 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 253:0 0 40G 0 disk
└─vda1 253:1 0 40G 0 part /
vdb 253:16 0 500G 0 disk
├─vdb1 253:17 0 1G 0 part
└─vdb2 253:18 0 499G 0 part
可以看到vdb磁盘下多了两个分区,一个1G一个499G。
格式化分区,数据盘格式化参考上面的内容,这里只做swap的格式化。
[root@CentOS7-srv2 ~]# mkfs.xfs /dev/vdb1
meta-data=/dev/vdb1 isize=512 agcount=4, agsize=65536 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=262144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
制作swap
[root@CentOS7-srv2 ~]# mkswap /dev/vdb1
mkswap: /dev/vdb1: warning: wiping old swap signature.
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=271baf7f-9edd-4b36-88c2-5dd7d9c28b68
激活swap
[root@CentOS7-srv2 ~]# swapon /dev/vdb1
# 可以看到swap分区已被激活
[root@CentOS7-srv2 ~]# free -m
total used free shared buff/cache available
Mem: 15884 365 7163 8 8354 15178
Swap: 1023 0 1023
[root@CentOS7-srv2 /]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 253:0 0 40G 0 disk
└─vda1 253:1 0 40G 0 part /
vdb 253:16 0 500G 0 disk
├─vdb1 253:17 0 1G 0 part [SWAP]
└─vdb2 253:18 0 499G 0 part /data
设置开机启动
[root@CentOS7-srv2 /]# vim /etc/fstab
/dev/vdb1 swap swap defaults 0 0
/dev/vdb2 /data xfs defaults 0 0
3 创建oracle用户
Oracle安装的时候不能用root用户安装,这里我们要为Oracle单独创建一个用户以及对应的组,Oracle安装时需要指定oinstall组,dba组以及oper组(在后面配置安装选项时能够看到该选项),但是这里我们只创建oinstall和dba两个组,在后面配置时,将oper放入dba组中。这种做法不是很正规,大家视情况而定需要不要加上oper组
我们需要创建这样一个用户
{
"name":"oracle",
"groups":["oinstall","dba"]
}
3.1 创建用户和组
# 创建组和用户
$groupadd oinstall
$groupadd dba
$useradd -g oinstall -G dba oracle
$passwd oracle
#查看用户的情况
$id oracle
uid=1002(oracle) gid=1004(oinstall) 组=1004(oinstall),1005(dba)
3.2 创建Oracle安装目录与环境变量
我在上一节挂载的硬盘上创建Oracle的安装目录,将该目录的拥有者改为Oracle,并修改相关目录权限。
$mkdir -p /data/oracle/product/11.2.0
$chown -R oracle:oinstall /data/oracle/
$chmod -R 755 /data/oracle/
有了安装目录后,我们就可以将环境变量指向该目录了,oracle用户需要用到的环境变量包括,ORACLE_BASE,ORACLE_HOME,ORACLE_SID,我们将这些环境变量写入oracle用户的.bashrc文件中。
#切换至oracle用户,操作以下步骤
$su - oracle
$vim .bashrc
# 设置如下内容
ORACLE_BASE=/data/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
# 刷新,并测试环境变量是否已加载
$source .bashrc
$echo $ORACLE_HOME
#返回root用户
$exit
4 系统设置
要保证顺利的安装Oracle,需要对CentOS系统进行一些修改,包括:关闭selinux,修改内核配置以及oracle用户对资源的使用限制等。
4.1 关闭SELinux
SELinux(Security-Enhanced Linux),翻译过来是安全性加强的Linux。简单的理解就是开启它后,使得linux进程在访问所需资源时会受到一定的控制,进程只能访问那些在他的任务中所需要的文件。至于为什么安装或使用Oracle时,要关闭selinux,我并没有深入的研究。
$vim /etc/selinux/config
SELINUX=disabled
$setenforce 0
修改配置文件/etc/selinux/config
是永久设置的方式,但是需要重启系统,而setenforce 0
则是临时关闭selinux,下次重启后还是要读取/etc/selinux/config
中的配置,通过这两条命令的配置使用,可以保证关闭selinux而不需要重启服务器。
4.2 修改Linux内核参数
$vim /etc/sysctl.conf
# 配置如下系统内核参数
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
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 = 1048576
# 刷新内核参数
$sysctl -p
这些内核参数不是很明白什么意思。
4.3 配置用户对资源的使用限制
配置oracle用户对系统资源的使用,配置文件在/etc/security/limits.conf,格式如下:
-
@student hard nproc 20
domain 表示要限制的用户或者是@用户组
type 表示限制的类型,有两个值soft和hard,soft表示告警类型,hard表示强制类型,如果用户使用的资源超出了soft的范围,只会发出警告,而使用的资源超出了hard的范围则会报错。
item 表示限制的项目,比如 nofile 表示用户最大能打开文件描述符的数量(即打开文件的个数),nproc表示能打开的最大进程数
value 表示值
$vim /etc/security/limits.conf
#在limits.conf中设置Oracle用户的对资源的限制
oracle soft nproc 2047 #oracle用户最大打开进程数
oracle hard nproc 16384
oracle soft nofile 1024 #oracle用户最大打开文件
oracle hard nofile 65536
oracle soft stack 10240
$vim /etc/profile
# 在profile最后添加
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
unset i
unset -f pathmunge
这里同时在/etc/security/limits.conf
和/etc/profile
文件同时设置oracle用户最大打开进程数和最大打开文件。
切换到oracle用户,使用ulimit -a 查看oracle用户的资源使用限制情况
$su - oracle
$ulimit -a
$exit
4.4 修改登录验证
修改login程序的验证过程,PAM模块参见鸟哥的Linux私房菜
$ vim /etc/pam.d/login
# 添加以下内容:
session required /lib64/security/pam_limits.so
session required pam_limits.so
4.5 添加主机名
# 查看主机名,我这里的主机名是CentOS
$hostname
#将主机名添加到/etc/hosts中
$vim /etc/hosts
127.0.0.1 CentOS localhost localhost.localdomain localhost4 localhost4.localdomain4
目前,我暂时不知道为什么要将主机名加到hosts文件中,但是后面对Oracle安装文件配置时,有一个ORACLE_HOSTNAME参数需要指定主机名,那个名称就是现在指定的这个。
4.6 添加防火墙规则
CentOS7采用firewalld作为防火墙,远程客户端(如:SQLDeveloper)连接Oracle数据库时,一般使用的是tcp的1521端口,这里需要在firewalld上配置该规则
#在public区域,添加一个tcp,1521端口,并永久保存
$firewall-cmd --zone=public --add-port=1521/tcp --permanent
5 安装Oracle
5.1 解压安装包
下载并解压Oracle安装包,这里我是在Mac上下载的Linux,然后用scp命令上传到CentOS中的。
#从mac电脑上传Oracle安装到CentOS指定的目录
$scp -r linux.x64_11gR2_database_1of2.zip [email protected]:/home/oracle/
$scp -r linux.x64_11gR2_database_2of2.zip [email protected]:/home/oracle/
我Virtual Box中CentOS的IP地址是192.168.0.208,上传完成后,使用oracle用户解压安装包。
$ll -h /home/oracle/
-rw-r--r--. 1 oracle oinstall 1.2G 11月 16 15:20 linux.x64_11gR2_database_1of2.zip
-rw-r--r--. 1 oracle oinstall 1.1G 11月 16 15:23 linux.x64_11gR2_database_2of2.zip
#使用oracle用户解压安装包
$unzip linux.x64_11gR2_database_1of2.zip
$unzip linux.x64_11gR2_database_2of2.zip
$ll -h /home/oracle/database
total 16K
drwxr-xr-x. 12 oracle oinstall 203 Aug 17 2009 doc
drwxr-xr-x. 4 oracle oinstall 223 Aug 15 2009 install
drwxrwxr-x. 2 oracle oinstall 61 Aug 15 2009 response
drwxr-xr-x. 2 oracle oinstall 34 Aug 15 2009 rpm
-rwxr-xr-x. 1 oracle oinstall 3.2K Aug 15 2009 runInstaller
drwxrwxr-x. 2 oracle oinstall 29 Aug 15 2009 sshsetup
drwxr-xr-x. 14 oracle oinstall 4.0K Aug 15 2009 stage
-rw-r--r--. 1 oracle oinstall 5.3K Aug 18 2009 welcome.html
Oracle安装文件会解压在一个database目录中,这里我们需要关注的是该目录下的runInstaller安装执行文件,以及response的配置文件目录。
5.2 安装配置文件说明
要静默安装Oracle,需要用到Oracle的配置文件,这个配置文件在database/response中,一般的做法是copy一份该目录,在copy的文件中做修改,这里我将response的内容copy到oracle目录下的etc目录中。
$cp -a /home/oracle/database/response/ /home/oracle/etc
$ll -h /home/oracle/etc
-rw-rw-r--. 1 oracle oinstall 44K Feb 14 2009 dbca.rsp
-rw-rw-r--. 1 oracle oinstall 23K Aug 15 2009 db_install.rsp
-rwxrwxr-x. 1 oracle oinstall 5.7K Feb 26 2009 netca.rsp
可以看出Oracle的安装配置文件主要有3个,
- db_install.rsp 安装Oracle数据库的配置文件
- netca.rsp 监听配置文件
- dbca.rsp 创建Oracle数据库实例的配置文件
有这些配置文件可以看出,我们需要分三步安装Oracle,第一步安装Oracle数据库,第二步安装监听,第三步安装Oracle数据库实例。
5.3 安装Oracle数据库
配置db_install.rsp
$vim /home/oracle/etc/db_install.rsp
#修改以下内容
#安装方式,选择只安装数据库,因为后面我们需要单独安装实例和监听
oracle.install.option=INSTALL_DB_SWONLY
#服务器名称,使用hostname可以查看,需要在/etc/hosts中添加
ORACLE_HOSTNAME=CentOS
#oracle用户所在组
UNIX_GROUP_NAME=oinstall
#这个目录没有创建,在安装Oracle时会自动生成
INVENTORY_LOCATION=/data/oracle/oraInventory
#语言设置
SELECTED_LANGUAGES=en,zh_CN
#oracle_home路径,oracle数据库安装的位置
ORACLE_HOME=/data/oracle/product/11.2.0
#oracle的根目录
ORACLE_BASE=/data/oracle
#安装Oracle企业版
oracle.install.db.InstallEdition=EE
#dba用户组
oracle.install.db.DBA_GROUP=dba
#oper操作组,注意:我在创建组时,没有为oracle用户创建oper操作组,所以这里将操作组设置为了dba,读者可以根据实际情况修改
oracle.install.db.OPER_GROUP=dba
#数据库类型,一般类型
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
#设置安全更新
DECLINE_SECURITY_UPDATES=true
配置文件完成后,终于要安装oracle数据库了,使用下列命令
$/home/oracle/database/runInstaller -silent -responseFile /home/oracle/etc/db_install.rsp -ignorePrereq
在安装过程中可以使用top去观察oracle的安装情况
$top
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
7619 oracle 20 0 1102340 142184 6124 S 93.0 7.5 1:43.33 java
7501 root 20 0 0 0 0 S 2.3 0.0 0:02.38 kworker/0:1
可以看到oracle用户正在安装Oracle数据库,安装完成后需要用root用户执行以下命令
#使用root用户执行
$sh /data/oracle/oraInventory/orainstRoot.sh
$sh /data/oracle/product/11.2.0/root.sh
5.4 安装监听
Oracle数据库安装成功后,可以在Oracle的bin目录中找到网络助手程序netca,配置监听
#使用oracle用户
$netca /silent /responseFile /home/oracle/etc/netca.rsp
#查看监听状态
$lsnrctl status
netca静默安装的时候,如果报了如下错误:
UnsatisfiedLinkError exception loading native library: njni11
java.lang.UnsatisfiedLinkError: /data/oracle/product/11.2.0/lib/libnjni11.so: libclntsh.so.11.1: cannot open shared object file: No such file or directory
java.lang.UnsatisfiedLinkError: jniGetOracleHome
at oracle.net.common.NetGetEnv.jniGetOracleHome(Native Method)
at oracle.net.common.NetGetEnv.getOracleHome(Unknown Source)
at oracle.net.ca.NetCALogger.getOracleHome(NetCALogger.java:230)
at oracle.net.ca.NetCALogger.initOracleParameters(NetCALogger.java:215)
at oracle.net.ca.NetCALogger.initLogger(NetCALogger.java:130)
at oracle.net.ca.NetCA.main(NetCA.java:404)
Error: jniGetOracleHome
Oracle Net Services 配置失败。退出代码是1
解决办法
cp $ORACLE_HOME/inventory/Scripts/ext/lib/libclntsh.so.11.1 $ORACLE_HOME/lib/
这里如果报这个错,一般后面的安装都会有问题,所以建议卸载,后重新安装一次,卸载Oracle参考: Linux下卸载Oracle 11g
5.5 安装Oracle数据库实例
修改数据库实例配置文件/home/oracle/etc/dbca.rsp,然后用数据库助手程序dbca,创建数据库
$vim /home/oracle/etc/dbca.rsp
#数据库名
GDBNAME = "orcl"
#sid
SID = "orcl"
#数据库字符集
CHARACTERSET = "AL32UTF8"
$dbca -silent -responseFile /home/oracle/etc/dbca.rsp
登录数据库,查看实例状态
$sqlplus / as sysdba
SQL> select status from v$instance;
# STATUS
# ------------
# OPEN
5.6 手动启动Oracle
当重启服务器后,如果没有配置自动启动Oracle,则需要手动对其进行启动,主要是监听和数据库两部分
# 使用oracle用户启动监听
$lsnrctl start
# 使用IPC方式登录Oracle数据库,然后启动Oracle实例
$sqlplus / as sysdba
#在sqlplus中启动数据库
SQL> startup
6 测试
6.1 添加测试用户
create temporary tablespace test_temp tempfile '/data/oracle/oradata/orcl/test_temptemp.dbf' size 128M autoextend on next 100M maxsize 1024M extent management local;
create tablespace test_data logging datafile '/data/oracle/oradata/orcl/test_data.dbf' size 128M autoextend on next 100M maxsize 1024M extent management local;
create user test identified by aaaaaa default tablespace test_data temporary tablespace test_temp;
grant connect,resource,create view to test;
6.2 删除测试用户
drop tablespace test_data including contents and datafiles cascade constraints;
drop tablespace test_temp including contents and datafiles;
drop user test;