⑴ 如何安装和使用oracle数据库
一、Oracle 下载
注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。 路径名称中,最好不要出现中文,也不要出现空格等不规则字符。
二、Oracle安装
1、解压缩文件,将两个压缩包一起选择, 鼠标右击 -> 解压文件
2.两者解压到相同的路径中,
3. 到相应的解压路径上面,找到可执行安装文件【 setup.exe 】双击安装。
4. 安装第一步:配置安全更新,这步可将自己的电子邮件地址填写进去(也可以不填写,只是收到一些没什么用的邮件而已)。取消下面的“我希望通过My Oracle Support接受安全更新(W)”。
5. 安全选项,直接选择默认创建和配置一个数据库(安装完数据库管理软件后,系统会自动创建一个数据库实例)。
6. 系统类,直接选择默认的桌面类就可以了。(若安装到的电脑是,个人笔记本或个人使用的电脑使用此选项)
7. 典型安装。 重要步骤。建议只需要将Oracle基目录更新下,目录路径不要含有中文或其它的特殊字符。全局数据库名可以默认,且口令密码,必须要牢记。密码输入时,有提示警告,不符合Oracel建议时不用管。 (因Oracel建议的密码规则比较麻烦, 必须是大写字母加小写字母加数字,而且必须是8位以上。麻烦,可以输入平常自己习惯的短小密码即可)
8. 若输入的口令短小简单,安装时会提示如下。直接确认Y继续安装就是了。
9. 先决条件检查。 安装程序会检查软硬件系统是否满足,安装此Oracle版本的最低要求。 直接下一步就OK 了。
10. 概要 安装前的一些相关选择配置信息。 可以保存成文件 或 不保存文件直接点完成即可。
11. 安装产品 自动进行,不用管。
12. 数据库管理软件文件及dbms文件安装完后,会自动创建安装一个实例数据库默认前面的orcl名称的数据库。
13. 实例数据库创建完成了,系统 默认是把所有账户都锁定不可用了(除sys和system账户可用外),建议点右边的口令管理,将常用的scott账户解锁并输入密码。
14. 解锁scott账户, 去掉前面的绿色小勾,输入密码。同样可以输入平常用的短小的密码,不必非得按oracle建议的8位以上大小写加数字。
15. 同样,密码不符合规则会提示。不用管它,继续Y即可。
16. 安装成功,完成即可。
三、安装后,进入小测试下
可以通过开始,应用程序中的 "Oracle 11g" -> "应用程序开发" -> "sql Developer 或Sql Plus" 连接。
注意第一次,使用SQL Developer时,会提示指定 java.exe的路径,这里千万别指定自己的java_home了(我就是开始不知道,指定一个JDK6,结束说不兼容。)可以使用Oracel安装路径下面的jdk路径,如图:
当然若不小心,选择错了。选择了java_home中的高级版本,打开SQL Developer报错后不兼容,也有办法解决。可以在
【F:\app\chen\proct\11.2.0\dbhome_1\sqldeveloper\sqldeveloper\bin】路径下找到【sqldeveloper.conf】文件后打开
找到SetJavaHome 所匹配的值,删除后面的配置内容。保证时会提示,只读文件不可覆盖保存。此时可以另存为到桌面上,然后再回到bin目录中删除掉此文件,再把桌面上的文件复制过去,再打开时,重新选择java.exe。此时选择对就好了。
⑵ 如何图形化创建oracle数据库
用命令行输入 ./dbca
⑶ 怎样在本机建oracle数据库
在配置和转移工具里面 使用 database configuration assistant,根据向导创建一个数据库
⑷ 如何在本地建立oracle数据库
前提:安装好oracle数据库客户端; PL/SQL DEVELOPER
1.打开DatabaseConfiguration Assistant,如图:
;
grantcreatesessiontostruts2;
OK,现在可以用你自己设置的用户名/密码登陆了
⑸ oracle怎么创建数据库实例
从Windows桌面执行“开始”→“程序”→“Oracle - <ORACLE_HOME_NAME>”→“配置和移置工具”→“Database Configuration Assistant”命令,打开Database Configuration Assistant对话框的欢迎界面,单击该界面中的“下一步”按钮
启用“创建数据库”选项,单击“下一步”按钮,进入“步骤2:数据库模板”界面
启用“一般用途或事务处理”选项,单击“下一步”按钮,进入“步骤3:数据库标识”界面
在“步骤3:数据库标识”界面中设置新数据库的全局数据库名,这里设置为myorcl,而数据库实例名(SID)默认与全局数据库名相同,也为myorcl
设置好口令后,单击“下一步”按钮,进入“步骤6:存储选项”界面,在该界面中启用“文件系统”选项
单击“下一步”按钮,进入“步骤7:数据库文件所在位置”界面。设置好存储位置后,单击“下一步”按钮,进入“步骤8
¤采用默认设置,单击“下一步”按钮,进入“步骤9:数据库内容”界面,该界面中可以对示例方案及定制脚本进行配置。采用默认设置,单击“下一步”按钮,进入“步骤10:初始化参数”界面,该界面中可以对内存、调整大小、字符集和连接模式进行配置。采用默认设置,单击“下一步”按钮,进入“步骤11:安全设置”界面,在该界面中采用默认设置,即启用“保留增强的11g默认安全设置”选项。¤单击“下一步”按钮,进入“步骤 12:自动维护任务”界面,在该界面中选择“启用自动维护任务”选项。
单击“下一步”按钮,进入“步骤13:数据库存储”界面,在该界面中可以指定数据库的存储参数,单击“下一步”按钮,进入“步骤14:创建选项”界面
单击“完成”按钮,在弹出的“确认”对话框中单击“确定”按钮,即可开始新数据库的创建
⑹ linux怎么创建orcale数据库
方法/步骤
检查硬件是否满足要求
1)确保系统有足够的 RAM 和交换空间大小,运行以下命令:
#grep MemTotal /proc/meminfo
#grepSwapTotal /proc/meminfo
注:所需最小 RAM 为 512MB,而所需最小交换空间为 1GB。对于 RAM 小于或等于 2GB 的系统,交换空间应为 RAM 数量的两倍;对于 RAM 大于 2GB 的系统,交换空间应为 RAM 数量的一到两倍。
2)确保有足够的磁盘空间。Oracle 10g软件大约需要 2.5GB 的可用磁盘空间,数据库则另需至少1.2G的磁盘空间
3)/tmp 目录至少需要 400MB 的可用空间。
要检查系统上的可用磁盘空间,运行以下命令:
#df-h
⑺ 在Linux平台下 怎样搭建Oracle数据库 越详细越好 紧急 还望高手指点
刚刚配置好的一个,发给你参考一下。
在 Linux x86 上安装 Oracle 数据库 10g
uname -r
例如:
# uname -r
2.4.21-4.0.1.ELsmp
其他所需程序包的版本(或更高版本):
? gcc-3.2.3-2
? make-3.79
? binutils-2.11
? openmotif-2.2.2-16
? setarch-1.3-1
? compat-gcc-7.3-2.96.122
? compat-gcc-c++-7.3-2.96.122
? compat-libstdc++-7.3-2.96.122
? compat-libstdc++-devel-7.3-2.96.122
? compat-db-4.0.14.5(Oracle 10g 数据库安装指南 中将其列为是必需的,但此处并不需要)
要查看系统上安装了这些程序包的哪些版本,以 root 用户身份运行以下命令:
rpm -q gcc make binutils openmotif setarch compat-db compat-gcc \
compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel
例如:
# rpm -q gcc make binutils openmotif setarch compat-db compat-gcc \
> openmotif compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel
gcc-3.2.3-20
make-3.79.1-17
binutils-2.14.90.0.4-26
openmotif-2.2.2-16
setarch-1.3-1
package compat-db is not installed
compat-gcc-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
请注意,尚未安装 compat-db 程序包。安装过程中可用的任何程序包组均不包含此程序包,因此必须在单独的步骤中安装。如果系统上缺少任何其他程序包版本,或版本比以上指定的版本旧(compat-db 除外),则可以从 Red Hat Network 下载并安装更新。
安装 compat-db
插入原始 Red Hat Enterprise Linux 介质的第二张 CD。(Update 2 中未包含该程序包,它仅存在于原始介质中。)
此 CD 自动挂载。
以 root 用户身份运行以下命令:
rpm -ivh /mnt/cdrom/RedHat/RPMS/compat-db-4.0.14-5.i386.rpm
例如:
# rpm -ivh /mnt/cdrom/RedHat/RPMS/compat-db-4.0.14-5.i386.rpm
Preparing... ########################################### [100%]
1:compat-db ########################################### [100%]
________________________________________
第 2 部分:针对 Oracle 配置 Linux
Linux 软件现已安装完毕,您需要针对 Oracle 对其进行配置。本部分将逐步讲解针对 Oracle 数据库 10g 配置 Linux 的过程。
验证系统要求
要验证系统是否满足 Oracle 10g 数据库的最低要求,以 root 用户身份登录并运行以下命令。
要查看可用 RAM 和交换空间大小,运行以下命令:
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo
例如:
# grep MemTotal /proc/meminfo
MemTotal:512236 kB
# grep SwapTotal /proc/meminfo
SwapTotal:1574360 kB
所需最小 RAM 为 512MB,而所需最小交换空间为 1GB。对于 RAM 小于或等于 2GB 的系统,交换空间应为 RAM 数量的两倍;对于 RAM 大于 2GB 的系统,交换空间应为 RAM 数量的一到两倍。
Oracle 10g 软件还需要 2.5GB 的可用磁盘空间,而数据库则另需 1.2GB 的可用磁盘空间。/tmp 目录至少需要 400MB 的可用空间。要检查系统上的可用磁盘空间,运行以下命令:
df -h
例如:
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 6.8G 1.3G 5.2G 20% /
/dev/sda1 99M 17M 77M 18% /boot
该示例表明,/tmp 目录没有自己的文件系统。(对本指南而言,它是根文件系统的一部分。)根文件系统可用空间为 5.2 GB,除了满足安装 (2.5 + 1.2 + 0.4 = 4.1GB) 外还小有富余。
创建 Oracle 组和用户帐户
接下来,创建用于安装和维护 Oracle 10g 软件的 Linux 组和用户帐户。用户帐户将称为 oracle,而组将称为 oinstall 和 dba。以 root 用户身份执行以下命令:
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
id oracle
例如:
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -m -g oinstall -G dba oracle
# id oracle
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)
设置 oracle 帐户的口令:
passwd oracle
例如:
# passwd oracle
Changing password for user oracle.
New password:
Retype new password:
passwd:all authentication tokens updated successfully.
创建目录
现在,创建存储 Oracle 10g 软件和数据库文件的目录。本指南在创建目录结构时所用的命名惯例符合最佳灵活结构 (OFA) 规范。有关 OFA 标准的更多信息,请参阅针对 UNIX 系统的 Oracle 数据库 10g 安装指南 的附录 D。
以下假设在根文件系统中创建目录。这样做是为了简便起见,不建议将其作为通用做法。这些目录通常被创建为单独的文件系统。
以 root 用户身份执行以下命令:
mkdir -p /u01/app/oracle
mkdir -p /u02/oradata
chown -R oracle:oinstall /u01/app/oracle /u02/oradata
chmod -R 775 /u01/app/oracle /u02/oradata
例如:
# mkdir -p /u01/app/oracle
# mkdir -p /u02/oradata
# chown -R oracle:oinstall /u01/app/oracle /u02/oradata
# chmod -R 775 /u01/app/oracle /u02/oradata
配置 Linux 内核参数
Linux 内核非常出色。与大多数其他 *NIX 系统不同,Linux 允许在系统启动和运行时修改大多数内核参数。完成内核参数更改后不必重新启动系统。Oracle 数据库 10g 需要以下所示的内核参数设置。其中给出的是最小值,因此如果您的系统使用的值较大,则不要更改它。
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
如果您按照以上说明安装了 Linux,且内核参数全部采用默认值,则只需在以 root 用户身份登录后执行下命令。
cat >> /etc/sysctl.conf <<EOF
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
EOF
/sbin/sysctl -p
例如:
# cat >> /etc/sysctl.conf <<EOF
> kernel.shmall = 2097152
> kernel.shmmax = 2147483648
> kernel.shmmni = 4096
> kernel.sem = 250 32000 100 128
> fs.file-max = 65536
> net.ipv4.ip_local_port_range = 1024 65000
> EOF
# /sbin/sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
kernel.sysrq = 0
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
以 root 用户身份运行以下命令来验证您的设置:
/sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep sem
/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep ip_local_port_range
例如:
# /sbin/sysctl -a | grep shm
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shm-use-bigpages = 0
# /sbin/sysctl -a | grep sem
kernel.sem = 250 32000 100 128
# /sbin/sysctl -a | grep file-max
fs.file-max = 65536
# /sbin/sysctl -a | grep ip_local_port_range
net.ipv4.ip_local_port_range = 1024 65000
如果系统的参数设置的比上述参数值小,则编辑 /etc/sysctl.conf 文件,添加或更改这些参数。完成后,运行以下命令激活更改:
/sbin/sysctl -p
为 oracle 用户设置 Shell 限制
Oracle 建议对每个 Linux 帐户可以使用的进程数和打开的文件数设置限制。要进行这些更改,以 root 用户的身份执行下列命令:
cat >> /etc/security/limits.conf <<EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF
cat >> /etc/pam.d/login <<EOF
session required /lib/security/pam_limits.so
EOF
对于 RHEL 2.1 和 RHEL 3,使用以下命令:
cat >> /etc/profile <<EOF
if [ \$USER = "oracle" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF
cat >> /etc/csh.login <<EOF
if ( \$USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
umask 022
endif
EOF
oracle 用户的环境变量
要使用 Oracle 产品,应该或必须设置几个环境变量。对于数据库服务器,建议设置以下环境变量:
ORACLE_BASE
ORACLE_HOME
ORACLE_SID
PATH
如果您在同一服务器上安装了多个 Oracle 产品或数据库,则 ORACLE_HOME、ORACLE_SID 和 PATH 变量可能会更改。ORACLE_BASE 变量不应更改,并可以在需要时在您的登录配置文件中设置它。Oracle 提供了一个称作 oraenv 的实用程序来设置其他变量。
以 oracle 身份登录,修改 .bash_profile文件为如下内容:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
unset USERNAME
# Oracle Settings
TMP=/tmp;
export TMP
TMPDIR=$TMP;
export TMPDIR
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/proct/10.2.0/db_1
ORACLE_SID=orcl
ORACLE_TERM=xterm
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH ORACLE_TERM
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
此更改将在您下次登录到 oracle 帐户时生效。要使更改对当前会话为活动状态,只需从命令行运行此命令。
________________________________________
第 3 部分:安装 Oracle
可以从 OTN 下载 Oracle 数据库 10g。Oracle 提供了一个免费的开发和测试许可。但不提供支持,且该许可不允许用于生产目的。OTN 提供了完整的许可协议。
要使 Oracle 10g 发行套件介质可以在服务器上使用,最简单的方法是将其直接下载到服务器。
使用图形登录以 oracle 身份登录。
创建一个目录以存放 Oracle 10g 发行套件:
mkdir 10g_db
要从 OTN 下载 Oracle 数据库 10g,请将浏览器(Mozilla 比较好用)指向 http://www.oracle.com/technology/software/procts/database/oracle10g/htdocs/linuxsoft.html。填写 Eligibility Export Restrictions 页面,并阅读 OTN 许可协议。如果您接受限制和许可协议,则单击 I Accept。
单击 ship.db.cpio.gz 链接,并将该文件保存在为此目的创建的目录 (10g_db) 中 — 如果尚未登录到 OTN,则此时可能提示您登录。
解压缩此文件:
cd 10g_db
gunzip ship.db.cpio.gz
cpio -idmv < ship.db.cpio
安装软件
使用 oracle 帐户登录。
指定数据库名称 (ORACLE_SID)。该名称通常不多于五个字符。对此安装使用 demo1。
设置环境变量:
? Borne shell 和 Korn shell
? ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
? ORACLE_SID=demo1; export ORACLE_SID
? C shell
? setenv ORACLE_BASE /u01/app/oracle
? setenv ORACLE_SID demo1
将目录更改为 Oracle 10g 软件解压缩到的位置。
例如:
$ cd $HOME/10g_db
将目录更改为 Disk1。
例如:
$ cd Disk1
启动 Oracle 通用安装程序。
$ ./runInstaller
1. 欢迎
o 单击 Next。
2. 指定清单目录和证书
o 如果您一直在依循本指南中的步骤,则使用默认值即可。否则,编辑清单目录的路径,以指向正确目录。
o 操作系统组名称应为 oinstall。
3. 如果这是首次在此机器上安装 Oracle,则您将收到一个弹出窗口,提示需要以 root 用户身份运行 orainstRoot.sh 脚本。以 root 用户身份登录,更改到窗口中指定的目录,执行该脚本,然后继续操作。
4. 指定文件位置
o 如果您一直在依循本指南中的步骤,则使用默认值即可。否则,在继续操作前确保源路径和目标路径正确。
5. 选择安装类型
o 接受默认值 Enterprise Edition。
6. 与特定产品相关的先决条件的检查
o 如果您一直在依循本指南中的步骤,则所有检查都应顺利通过。如果一个或多个检查失败,则在继续操作前纠正该问题。
7. 选择数据库配置
o 接受默认值 Create a starter database 和 General Purpose。
8. 指定数据库配置选项
o 输入数据库的全局数据库名称。该名称应包含 ORACLE_SID 和服务器域名(例如,demo1.orademo.org,其中 demo1 是 ORACLE_SID,orademo.org 是域名)。
o 输入全局数据库名称时,SID 框将自动填充。
o 接受默认的数据库字符集。
o 选择 Create database with sample schemas。
9. 选择数据库管理选项
o 选择 Use Database Control for Database Management。
10. 指定数据库文件存储选项
o 选择 File System,然后输入数据库文件要使用的路径名(在本例中为 /u02/oradata)。
11. 指定备份和恢复选项
o 选择 Do not enable Automated backups。
12. 指定数据库模式口令
o 选择 Use the same password for all the accounts。
o 选择一个口令,然后输入两次进行确认。
13. 摘要
o 显示已安装产品的摘要。
o 单击 Install。
14. 安装
o 此屏幕历经安装和链接 Oracle 软件的几个阶段。
o 安装过程结束时弹出一个窗口显示配置信息。记下 Enterprise Manager URL,然后单击 OK 关闭该窗口。
o 弹出一个“Setup Privileges”窗口,提示需要以 root 用户身份运行配置脚本。以 root 用户身份登录,切换到该窗口中指示的目录,然后执行 root.sh 脚本。该脚本提示输入本地 bin 目录的位置。按 Enter 键接受默认值。当脚本完成时,返回到 Setup Privileges 窗口并单击 OK。(如下所示。)
15. 安装结束
o 记下摘要中显示的 URL,并在准备好时单击 Exit。
16. 恭喜!您的新 Oracle 10g 数据库已经启动并可以使用。
________________________________________
⑻ oracle怎样创建样例数据库
Oracle数据库实例的创建、删除、修改
以SUSE10SP2、Oracle10gR2为例。
本文中的数据库实例这一称谓应该换做数据库更为准确,数据库可以理解为是一个物理的静态概念,主要包括一些物理存在的数据库文件,而数据库实例则是一个动态概念,包括一些内存区域以及若干进程,数据库实例是对数据库进行操作的执行者。(20090714修改)
安装完Oracle数据库系统的安装后,需要创建数据库实例才能真正开始使用Oracle数据库服务。
总结起来,Oracle有三种创建数据库实例的方法。
第一种,最常用也最简单,那就是通过DBCA(Database Configuration Assistant),这是Oralce提供的一个图形界面的数据库实例配置工具,通过它可以创建、删除和修改数据库实例,它的使用也比较简单、易懂,交互式的图形界面操作,非常准确有效的提示与配置,是一个比较方便的创建数据库实例的方式。
按照DBCA给出的提示,很容易创建一个新数据库实例。
在创建数据库的时候,DBCA还提供了两个选项,让你可以根据刚刚设置好的参数生成一个数据库实例模板和一份数据库实例创建脚本。这两个东西是非常好,非常有用的东西,数据库模板由Oracle自己管理维护,已经创建好的数据库实例模板可以在DBCA图形程序新建数据库实例时作为模板来使用,另外在DBCA使用responseFile文件或者命令行参数创建数据库时也需要用到(见后面介绍);数据库创建脚本是一组脚本,包括shell脚本和sql脚本,这些脚本共同实现一个功能,那就是按照你之前在DBCA中设置好的那样创建一个数据库实例(后面也会有介绍),你需要做的只是将这些脚本在你的代码中调用起来。当然,你也可以选择只生成数据库模板或者数据库脚本,而不用去创建一个真的数据库(这通常很费时间)。
Oracle数据库实例的创建、删除、修改
DBCA是一个非常强大的工具,上面看到的只是DBCA最常用的创建一个数据库实例的使用,其实DBCA还提供另外两种使用方法,分别是responseFile和命令行带参调用。
先说DBCA的responseFile使用方法,responseFile这个东东并不陌生,前文讲的Oracle自动安装就是使用responseFile完成的,DBCA的responseFile使用方法和Oracle安装程序的responseFile使用方法基本一致。但DBCA的responseFile的来源只能是Oracle安装包中提供的模板文件,而不能向Oracle安装程序的responseFile一样,先自己record一个,然后再用这个record去指导Oracle的自动安装。从Oracle安装包中获取到DBCA的responseFile模板文件后,你可以根据自己的需要编辑修改该模板文件,以完成对数据库实例的某些参数设置(DBCA图形界面所提供的参数设置,responseFile中都可以设置,而且该responseFile模板文件的注释写的很好,你完全不用担心无法搞定那些繁杂的数据库实例参数设置,赞Oralce一个!)。该模板文件在Oracle安装包中的位置一般在${ORACLE_PACKAGE}/response目录下。
有了responseFile之后,你只需在调用DBCA的时候指定responseFile的位置和另外一些参数:
dbca [-silent|-progressOnly] -responseFile responseFile名称
其中-silent|-progressOnly选项意义和Oracle安装程序命令行参数中的同名选项一样,表示完全字符界面自动安装或者带图形提示界面的半自动化安装。
responseFile名称当然就是responseFile的具体位置了。
但是,有一点不是很好,那就是使用DBCA的responseFile方式创建Oracle数据库实例,需要事先已经存在一个数据库实例模板了,在responseFile中再指定该数据库实例模板名,然后DBCA再依据这个已有的数据库实例模板完成新数据库实例的创建,所以就会有前面讲到的DBCA图形界面创建数据库实例时提供生成数据库实例模板的选项(数据库实例模板也可以从一个已有数据库实例生成),就是在这要用到的。
从上面调用DBCA使用responseFile的命令中,应该已经看到了DBCA是提供一些命令行参数选项的,其实DBCA提供的命令行参数选项远比你想象的强大,甚至可以这么说,所有DBCA图形界面和responseFile能够办到的事,通过DBCA丰富的命令行参数选项都可以办到。你在DBCA图形界面上设置的参数或者在responseFile中指定的参数值都可以通过DBCA的命令行参数选项来进行设置,所以你完全可以只通过DBCA的命令行带参调用来完成一个数据库实例的创建(当然也包括删除、修改数据库实例等所有DBCA图形界面所能提供的功能)。其实,我更愿意这样认为,DBCA的responseFile应用也是一种DBCA命令行带参调用的使用。需要注意的是,当DBCA的命令行参数和responseFile同时设置一个参数时,命令行参数的优先级是比responseFile要高的。另外,使用DBCA命令行带参调用新建数据库实例和使用responseFile新建数据库实例一样,也是需要事先已经存在一个数据库实例模板,才能完成新数据库实例的创建。一份非常详细的DBCA所有命令行参数选项列表,你可以通过执行dbca -help获得。
到现在你可能已经发现,DBCA图形界面、DBCA的responseFile使用以及DBCA的命令行带参调用,其实是三个分别具备完全数据库实例设置功能的工具或者接口,分别对应不同的应用场景,它们可以满足你几乎所有的应用需求(使用这样的工具来帮助构建自己的软件真是非常惬意的一件事情,再赞Oracle一个!)。
第二种是通过脚本(是否称为命令行方式更合适,下文描述的脚本方式其实都是命令行方式的非交互式方法,或者说命令行的自动化方式,但其实所有脚本方式都可以将shell脚本或sql脚本中的shell命令、sqlplus命令拆分出来,手工在shell中或者sqlplus界面中进行交互式的输入执行,这可以称为命令行的手工方式)来完成数据库实例的代码中自动创建。这里说的脚本包括shell脚本和sql脚本,这种方式可以说是最适合与编程结合的,因为这些shell脚本或者sql脚本都可以直接在shell命令中调用执行,所以可以很好与shell编程相结合。而这其实是基于一个非常重要的事实,即Oracle提供了一个交互式的命令行工具sqlplus(类似与DB2的db2cmd),这个工具可以认为是一个Oracle数据库管理工具,通过它可以执行一些Oracle的数据库管理命令,来完成一些数据库管理工作(这当然就包括数据库实例的创建),同时你也可以把它当作一个SQL语句执行器,直接在里边执行你想要执行的SQL语句或者存储过程等,并获取执行结果。并且,更重要的是,sqlplus可以直接在shell命令行中进行非交互式的调用执行(通常是调用执行一段sqlplus语句,或者是一个由一些sqlplus语句组成的sql脚本,我所说的sqlplus语句包括Oracle数据库管理维护命令、SQL语句和存储过程等),这就为在shell编程中使用sqlplus完成数据库实例自动创建工作提供了可能。
shell命令行中非交互式调用sqlplus执行一段sqlplus语句是利用shell编程中重定向命令的一个特性,即分隔符重定向输入。一般用法如下:
command<<任意自定义分隔符
>(换行)内容
>(换行)内容
>自定义分隔符
shell中遇到<<则会自动将下一个单词认作分隔符,并将分隔符后面的文本当作command命令执行的内容传递给command依次全部执行直至遇到下一个分隔符单词才结束。这里的分隔符可以是任意自定义的单词,通常使用EOF,举例:
sqlplus / as sysdba<<EOF
startup nomount;
select * from v$version;
shutdown immediate;
exit;
EOF
这段shell程序调用sqlplus执行了若干sqlplus语句,用来启动数据库实例,查询数据库版本信息,然后关闭数据库实例,退出sqlplus。
shell命令行中非交互式调用sqlplus执行一个sql脚本是利用sqlplus本身提供的命令行参数。在sqlplus界面中可以通过start命令和@命令来执行一个sql脚本,两者功效相同,用法如下:
SQL>start sql脚本绝对路径;
SQL>@sql脚本绝对路径;
而在shell命令行中可以使用@来完成sqlplus对sql脚本的调用执行,举例:
sqlplus / as sysdba @./MySQL.sql
以上命令会调用sqlplus执行当前目录下的MySQL.sql脚本。
使用脚本来完成数据库实例的创建工作,也分为两种情况。
一种是诚如前文所述的那样,在使用DBCA图形工具创建数据库实例的同时生成一份数据库实例创建脚本(包括若干shell脚本和sql脚本),那么你就可以使用这份脚本,在shell中进行调用,完成数据库实例的代码自动创建。使用这份数据库实例创建脚本创建的新数据库实例和原数据库实例是完全一样,当然,你可以将生成的脚本进行修改,以完成你对数据库实例的某些设置,但是请在你对脚本内容已经足够了解,并且知道你自己在干什么的情况下修改脚本,否则你很有可能使用修改后的脚本无法正确创建数据库实例。这种方法中shell脚本对sqlplus的使用,更多的是使用sqlplus来执行一些Oracle生成的sql脚本(这些sql脚本的内容是就是一些sqlplus语句的集合,它们的任务就是完成数据库实例的创建以及设置)。
另一种情况则是不依靠DBCA生成的脚本,完全由自己来编写实现一份shell脚本,在脚本中你可以调用sqlplus执行一段sqlplus语句或者其它一些sql脚本,以完成数据库实例的创建和设置,这完全取决于你的实现;而最常用的用来创建数据库实例的一个方法就是在sqlplus中使用create database语句,create database语句提供了许多丰富的选项和参数设置,确保你能完全创建一个自己所需要的数据库实例。当然,还有一些其它方法可以创建数据库实例,比如调用执行oracle提供某些存储过程等。
至于create database语句的详细介绍可以参考oracle的sql reference。
第三种严格来说不能算作一种创建Oracle数据库实例的方法,它是通过已有的数据库实例为基础来完成新数据库实例的创建的。这种方法是首先通过第一种或者第二种方法来创建好一个数据库实例,然后将该数据库实例的物理文件进行备份,然后直接使用备份的物理文件恢复出一个与原数据库实例完全一样新的数据库实例,所以这种方法需要和第一、二种方法相配合才能使用。这种方法其实已经属于Oracle数据备份与恢复的范畴了,就是Oracle数据备份恢复方式中的物理备份恢复,所以这种方法可以叫做物理恢复法。
简单介绍物理恢复法,首先将一个已经存在数据库实例(最好已关闭)进行物理备份,所谓物理备份其实就是复制该数据库实例所使用的操作系统文件,这些文件主要包括DataFiles、RedoLogs、ControlFiles和UndoFiles(这些文件一般存在于$ORACLE_HOME/oradata目录下),进行数据库实例恢复的时候只需将备份的操作系统文件复制到新的oradata目录下即可,可以直接启动使用恢复后的该数据库实例。不难看出,这种备份恢复是依赖于操作系统平台的。
详细的物理备份和恢复介绍可以参考oracle的backup and recovery basics以及backup and recovery advanced user's guide。
说完了数据库实例的创建,现在来说说数据库实例的删除和修改。其实介绍完了数据库实例的创建,数据库实例的删除和修改就非常简单了。基本和前文数据库实例创建的内容相一致,且比较而言更简单。
数据库实例的删除从上文中数据库实例的创建不难得到,大致有两种方法,DBCA工具和命令行方式。
DBCA工具除了能够用来创建数据库实例,当然也能够用来删除数据库实例了,且同样可以用使用responseFile或者命令行带参调用等方法来完成数据库实例的删除,请参考数据库实例创建部分。
命令行删除数据库实例的方式,严格来讲,是使用一组sqlplus命令来完成数据库实例的删除,这组sqlplus命令可以组织在一个sql脚本中,然后在shell命令行中调用sqlplus程序来执行该sql脚本,或者直接在shell命令行中利用shell程序重定向特性调用sqlplus依次完全执行这组sqlplus命令,再或者使用手工的交互式输入执行,使用方法请参考数据库实例创建部分。
其中涉及到的sqlplus命令参考以下:
SQL>startup restrict mount;
SQL>drop database;
使用sqlplus命令删除数据库实例,必须先以restrict mount方式将数据库实例加载(但不打开),然后使用drop database语句删除该数据库实例。
数据库实例的修改和数据库实例的创建,情况类似,DBCA方式或者命令行方式。只要是DBCA方式能够修改的数据库实例参数,命令行方式也都能办到。
⑼ oracle数据库怎么创建数据库
数据库用户的创建、权限的分配
数据库安装完成后,有两个系统级的用户:
system 默认密码为:manager
sys 默认密码为:change_on_install
在安装的数据库目录中找到 \oracle\proct\9.2\bin 中的sqlplus程序, 运行:./sqlplus system/manager@ora9i
用system用户创建自己的用户、权限;sql语句如下:
1、创建用户:
create user username identified by pwd default tablespace users Temporary TABLESPACE Temp;
2、 用户授权 grant connect,resource,dba to business;
3、 提交: commit;
数据库数据的导入,导出
假设有两个数据库 9.0.1 与 9.0.2 1.导出数据
exp system用户/system的密码@服务器名 owner用户名=“oradial ” file="oradial.dmp"
说明:
(1) 如果该命令是在本地执行,则不用指定服务器名
(2) owner用户名,通过sys用户的登录所创建的用户名。同时授予的权限包括
connect , dba , resource ,还要创建表空间。
(3) system用户名,owner用户名 是9.0.1数据库中的用户 2.导入数据
imp system用户/system的密码@服务器名 file=oradial.dmp fromuser(用户名)=oradial touser(用户名)=abc
若了解更多详情,在DOS下输入 exp help = y imp help = y