怎么在linux下安装oracle数据库

怎么在linux下安装oracle数据库,第1张

怎么在linux下安装oracle数据库

证系统要求

要验证系统是否满足 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

我用的是redhat

linux,用下面的步骤来启动oracle数据库。

首先使用oracle用户登录linux,然后在shell命令行中执行下面的命令:

第一步:打开oracle监听

$

lsnrctl

start

第二步:进入sqlplus

$

sqlplus

/nolog

sql>

第三步:使用sysdab角色登录sqlplus

sql>

conn

/as

sysdba

第四步:启动数据库

sql>

startup

经过上面的四个步骤,oracle数据库就可以启动了。

方法/步骤

检查硬件是否满足要求

1)确保系统有足够的 RAM 和交换空间大小,运行以下命令:

#grep MemTotal /proc/meminfo

#grepSwapTotal /proc/meminfo

注:所需最小 RAM 为 512MB,而所需最小交换空间为 1GB。对于 RAM 小于或等于 2GB 的系统,交换空间应为 RAM 数量的两倍;对于 RAM 大于 2GB 的系统,交换空间应为 RAM 数量的一到两倍。

2)确保有足够的磁盘空间。Oracle 10g软件大约需要 25GB 的可用磁盘空间,数据库则另需至少12G的磁盘空间

3)/tmp 目录至少需要 400MB 的可用空间。

要检查系统上的可用磁盘空间,运行以下命令:

#df-h

检查系统是否已安装所需的开发包

使用rpm -qa命令,确保以下包已成功安装。对于包的版本,只有版本高于下面的都可以,如果低于此版本,则要升级处理,如下:

binutils-2159202-13EL4

compat-db-4125-9

compat-libstdc++-296-296-13272

control-center-280-12

gcc-343-221EL4

gcc-c++-343-221EL44

glibc-234-29

glibc-common-234-29

gnome-libs-141290-441

libstdc++-343-221

libstdc++-devel-343-221

make-380-5

pdksh-5214-30

sysstat-505-1

xscreensaver-418-5rhel42

setarch-16-1

libaio-03103-3

创建oracle组和oracle用户

创建用于安装和维护 Oracle 10g软件的 Linux 组和用户帐户。用户帐户将称为 oracle,而组将称为 oinstall(用于软件安装) 和 dba(用于数据库管理)。

#groupadd oinstall

#groupadd dba

#useradd -m -g oinstall -G dba oracle –poracle (p表示添加帐号密码)

创建oracle目录并改变目录权限

现在,创建存储 Oracle 10g 软件和数据库文件的目录。本指南在创建目录结构时所用的命名惯例符合最佳灵活结构 (OFA) 规范。

以 root 用户身份执行以下命令:

#mkdir -p /u01/app/oracle # oracle根目录,-p 表示递归建立目录

#mkdir -p /u02/oradata # oracle数据文件存放目录

#chown -R oracle:oinstall /u01

#chown -R oracle:oinstall /u02

#chmod -R 775 /u01

#chmod -R 775 /u02

配置linux内核参数

#vi/etc/sysctlconf,添加如下内容:

kernelshmall = 2097152

kernelshmmax = 2147483648 #此处默认设置为2G,数值一般设为物理内存的40~50%

kernelshmmni = 4096

kernelsem = 250 32000 100 128

fsfile-max = 65536

netipv4ip_local_port_range = 1024 65000

netcorermem_default = 262144

netcorermem_max = 262144

netcorewmem_default = 262144

netcorewmem_max = 262144

完成后,运行以下命令激活更改:

#sysctl–p

注:Linux 内核非常出色。与大多数其他 NIX 系统不同,Linux 允许在系统启动和运行时修改大多数内核参数。完成内核参数更改后不必重新启动系统。Oracle 数据库 10g 需要以下所示的内核参数设置。其中给出的是最小值,因此如果您的系统使用的值较大,则不要更改它。

配置oracle用户的shell限制

#vi /etc/security/limitsconf 添加如下内容:

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

#vi /etc/pamd/login 添加如下内容:

session required pam_limitsso

导出x图形界面给oracle用户

由于安装时采用的是oracle的OUI图形化界面,需要X支持,而默认oracle用户是不支持图形化 *** 作的,必须以root的身份导出X给oracle用户使用。运行如下命令:

#xhost +

access control disabled,clients can connect from any host

出现以上文字表示导出成功。

oracle用户下执行

121设置环境变量

#su –oracle

$vi bash_profile

加入以下内容:

TMP=/tmp

TMPDIR=$TMP

ORACLE_BASE=/u01/app/oracle #oracle 根目录

ORACLE_HOME=$ORACLE_BASE/product/1020/db_1 #oracle 家目录

ORACLE_SID=orcl #根据实际需要命名

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

PATH=$ORACLE_HOME/bin:$PATH

exportTMP TMPDIR ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH

$source bash_profile #使环境变量生效

2、安装 Oracle

21、下载并解压oracle软件

从Oracle网站下载10201_database_linux_x86_32cpiogz到oracle用户家目录下/home/oracle/(也可为其他目录),使用oracle用户登录后,解压此文件:

$startx

$cd /home/oracle

$gunzip 10201_database_linux_x86_64cpiogz

$cpio -idmv <10201_database_linux_x86_64cpio

以上 *** 作将Oracle安装文件解压到database/目录。

(根据下载的包的格式不同,解压出来后的目录格式可能不同。)

22、Oracle OUI进行图形化安装(推荐使用高级安装方式)

切换到database/目录下,运行以下命令:

$cd database

$/runInstaller

检验是否安装成功

数据库正常安装结束后,默认是启动的。以oracle用户身份运行以下命令测试:

$sqlplus/ as sysdba

SQL>selectopen_mode from v$database;

OPEN_MODE

------------------

READ WRITE

若出现以上文字说明数据库正在正常运行。自此,数据库安装成功。

1 设置ORACLE_SID

默认的ORACLE_SID是orcl,我个人强烈建议起个唯一、且意义的名字,比如testdb,proddb等等,在Oracle用户下执行:

export ORACLE_SID=lxdbtest

2 重建PFILE

在$ORACLE_HOME/dbs目录下重建pfile(initORACLE_SIDora,本例为initlxdbtestora),除了以下三个参数,其它参数都可以不用设置(使用默认值):

db_name=lxdbtest

control_files='/home/oracle/app/oradata/lxdbtest/control01ctl','/home/oracle/app/oradata/lxdbtest/control02ctl','/home/oracle/app/oradata/lxdbtest/control03ctl'

memory_target=2G

为了安全起见,控制文件一定要指定多份,在生产库上,要把它们分开放在不同的物理磁盘上,这里因为是测试库,所以才放在同一个磁盘上。

3 启动实例至nomount状态

有了pfile就可以启动实例至nomount状态了:

$ sqlplus / as sysdba

SQLPlus: Release 112010 Production on Thu Jul 25 21:01:16 2013

Copyright (c) 1982, 2009, Oracle All rights reserved

Connected to an idle instance

SQL> startup nomount

ORACLE instance started

Total System Global Area 2137886720 bytes

Fixed Size 2215064 bytes

Variable Size 1224737640 bytes

Database Buffers 905969664 bytes

Redo Buffers 4964352 bytes

SQL>

4 执行CREATE DATABASE语句

CREATE DATABASE lxdbtest

LOGFILE GROUP 1

('/home/oracle/app/oradata/lxdbtest/redo01alog','/data/oradata/lxdbtest/redo01blog')

SIZE 100M BLOCKSIZE 512,

GROUP 2

('/home/oracle/app/oradata/lxdbtest/redo02alog','/data/oradata/lxdbtest/redo02blog')

SIZE 100M BLOCKSIZE 512,

GROUP 3

('/home/oracle/app/oradata/lxdbtest/redo03alog','/data/oradata/lxdbtest/redo03blog')

SIZE 100M BLOCKSIZE 512

MAXLOGFILES 5

MAXLOGMEMBERS 5

MAXLOGHISTORY 1

MAXDATAFILES 600

CHARACTER SET ZHS16GBK

NATIONAL CHARACTER SET AL16UTF16

EXTENT MANAGEMENT LOCAL

DATAFILE '/home/oracle/app/oradata/lxdbtest/system01dbf' SIZE 2048M REUSE AUTOEXTEND OFF

SYSAUX DATAFILE '/home/oracle/app/oradata/lxdbtest/sysaux01dbf' SIZE 2048M REUSE AUTOEXTEND OFF

DEFAULT TABLESPACE users

DATAFILE '/home/oracle/app/oradata/lxdbtest/users01dbf'

SIZE 2048M REUSE AUTOEXTEND OFF

DEFAULT TEMPORARY TABLESPACE temptbs

TEMPFILE '/home/oracle/app/oradata/lxdbtest/temp01dbf'

SIZE 2048M REUSE AUTOEXTEND OFF

UNDO TABLESPACE undotbs

DATAFILE '/home/oracle/app/oradata/lxdbtest/undotbs01dbf'

SIZE 2048M REUSE AUTOEXTEND OFF;

有几点需要注意:

1)每个日志文件组的日志要放在不同的物理磁盘上,万一有一个磁盘损坏,也不会丢失数据

2)根据需要选择合适的字符集

3)创建了5个基本的表空间:SYSTEM,SYSAUX,默认表空间,默认临时表空间,默认UNDO表空间

5 根据需要创建应用程序所需的表空间

对于关键业务的数据,应该创建单独的表空间给它使用(最好把表和索引分开放在表空间)

SQL> create tablespace p95169tbs

2 datafile '/home/oracle/app/oradata/lxdbtest/p95169tbs01dbf' size 10G,

3 '/home/oracle/app/oradata/lxdbtest/p95169tbs02dbf' size 10G;

Tablespace created

6 构建数据字典视图

@/rdbms/admin/catalogsql

@/rdbms/admin/catprocsql

@/sqlplus/admin/pupbldsql

7 修改system,sys的密码

alter user sys identified by ;

alter user system identified by ;

8 创建SPFILE

SQL> create spfile from pfile;

File created

重启数据库后,将以spfile取代pfile

最后,再顺便说下如何删除数据库。在删除数据库之前,数据库必须是在mount和restricted session状态,具体如下:

SQL> startup mount

SQL> alter system enable restricted session;

System altered

SQL> drop database;

Database dropped

数据库删除成功后,所有的在线日志文件、数据文件都会一并被删除,但归档日志和备份文件不会被删除。

启动oracle数据库步骤:

首先使用oracle用户登录Linux,然后在shell命令行中执行下面的命令:

第一步:打开Oracle监听

$ lsnrctl start

第二步:进入sqlplus

$ sqlplus /nolog

SQL>

第三步:使用sysdab角色登录sqlplus

SQL> conn /as sysdba

第四步:启动数据库

SQL> startup

经过上面的四个步骤,oracle数据库就可以启动了。

关闭数据库用 shutdown 是要等待事物结束才关闭

强制关闭用 shutdown abort

Linux系统下可以用sqlplus命令连接oracle数据库,方法如下:

sqlplus命令语法:

#sqlplus usr/pwd@//host:port/sid

#usr:用户名

#pwd:密码

#host:数据库服务器IP

#port:端口

#sid:数据库标识符

sqlplus命令连接Oracle示例:

[oracle@mzl ~]$ sqlplus risenet/1@//19216813099:1521/risenet

SQLPlus: Release 102010 - Production on Mon Feb 18 15:53:34 2008

Copyright (c) 1982, 2005, Oracle All rights reserved

Connected to:

Oracle9i Enterprise Edition Release 92010 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 92010 - Production

#测试数据库select查询语句

SQL> select instance_name,status from v$instance;

INSTANCE_NAME STATUS

---------------- ------------

risenet OPEN

SQL>

用ssh工具连接linux,按以下步骤 *** 作执行。

1、用oracle用户登录进去。

2、export ORACLE_SID=QS5100J; 指定oracle数据库的instance的名称。“QS5100J”为oracle的sid名称。

3、sqlplus /nolog 连接到数据库的sqlplus中。

4、connect /as sysdba; 出现“Connected to an idle instance”停止连接到数据库的应用。

5、shutdown immediate; 关闭数据库,等待数分钟。

6、startup; 启动数据库。

自动执行:写在sql文件中,用符号“@”引入文件执行。

以下文件可以放sql文件中执行

connect /as sysdba;

shutdown immediate;

startup;

手动执行:手动时一行一行输入执行。

使用SSH工具以root用户登录到数据库服务器后,执行以下命令:

1、启动数据库实例

su – oracle

export ORACLE_SID=QS5100Z QS5100Z为数据库名

sqlplus /nolog

conn / as sysdba

startup

exit

emctl start dbconsole 启动控制台

2、启动数据库监听

输入:su – oracle

输入: lsnrctl start

3、查看是否启动成功

su - oracle

ps -ef|grep oracle

4、查看oracle监听状态

su - oracle

lsnrctl status

以上就是关于怎么在linux下安装oracle数据库全部的内容,包括:怎么在linux下安装oracle数据库、怎么在linux中 *** 作oracle数据库、如何在linux系统下安装oracle数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9831168.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存