您的位置:首页 > 数据库 > Oracle

献给初学者的礼物——Oracle的安装与初始化配置

2020-03-01 22:12 274 查看
#一些概念
#Oracle Server= instance + physical DB
#instance = SGA(System Global Area) + background processes
#physical DB = Data Files(数据文件) + Control Files(控制文件) + Log Files(日志文件)
#
#INSTANCE_NAME/ORACLE_SID/SID 均指Oracle实例名
#db_name = 'orcl'
#instance_name = orcl
#db_domain = ocp.com
#global db name = service_names = orcl.ocp.com

安装步骤:
一、Linux服务器配置
1.服务器配置要求:memory > 700M;disk > 5GB

2.建组、用户
root:
groupadd -g 501 dba
groupadd -g 502 oinstall
useradd -d /home/oracle -u 501 -G dba -g oinstall -m -s /bin/bash oracle passwd oracle

3.编辑/home/oracle/.bash_profile
echo $SHELL /bin/bash
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=/u01/oracle/db
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
alias sqlplus="rlwrap sqlplus"

4.修改内核参数 /etc/sysctl.conf
kernel.shmmax = 定义共享内存段的最大大小,以字节为单位。默认为32M
kernel.shmmni = 定义共享内存段的最大数量,缺省4096
kernel.shmall = 一次能够使用的内存总量,以页为单位,I386平台,linux页大小4K
shmmin - 最小的共享内存段.
shmseg - 一个进程可分配的最大内存段数.
shmall - 最大可允许的内存数,比SGA还要大.
semmns - 信号量,跟ORACLE的PROCESS数有关.
semmsl - 一个信号量中最大的信号量数.
#编辑完成后,请执行以下命令使变动立即生效:
#/sbin/sysctl -p

二、安装ORACLE软件
1.使用oracle用户上传ORACLE数据库安装介质到 /home/oracle,用oracle用户登陆,$ startx,开一个terminal窗口
root切换oracle命令:$ su - oracle
创建u01目录为软件安装目录:$ mkdir u01

2.执行安装程序
$ unzip 10201_database_linux32.zip
$ cd database
$ ./runInstaller
注:安装过程中选择不创建默认数据库的模式,等安装后通过DBCA来手动创建。

升级到10.2.0.5
$ unzip p6810189_10204_Linux-x86.zip
$ cd Disk1
$ ./runInstaller

【如果在10.2.0.1已经创建了数据库,则当db软件已升级到10.2.0.5后,接着升级数据库
$ sqlplus sys/oracle as sysdba
SQL> startup upgrade
SQL> @$ORACLE_HOME/rdbms/admin/catupgrd.sql ( recreate system tables,procedures ) (about 1 hour)
SQL> shutdown immediate
SQL> startup
SQL> @$ORACLE_HOME/rdbms/admin/utlrp.sql (recompile any invalid application objects)
SQL> shutdown immediate
$ sqlplus sys/oracle as sysdba
SQL> startup
SQL> select * from v$version;
10.2.0.5.0】

三、创建数据库
$dbca 如果此命令未正常启动,很可能是因为Linux系统环境变量配置有问题。
两种解决方法:(1)在软件的安装目录下执行dbca启动命令。
$ cd /u01/oracle/db/bin
$ ./dbca
(2)修改Linux的环境变量,编辑 /home/oracle/.bash_profile 文件。

四、创建监听器
1、Linux服务器端:
(1)$ netca 打开Oracle Net Configuration Assistant,配置“监听程序配置”;
(2)$ netmgr 打开Oracle Net Manager,将要监听的数据库添加到LISTENER;
配置Listening Locations:
① Protocol: TCP/IP;
② Host: 192.168.0.119 (Linux服务器IP);
③ Port: 1521;
配置Database Services:
① Global Database Name: orcl.ocp.com;
② Oracle Home Directory: /u01/oracle/db;
③ SID: orcl
2、Windows客户端:
(1)> netca 打开Oracle Net Configuration Assistant,配置“命名方法配置”和“本地Net服务名配置”;

以上的配置可不用UI进行修改,直接手动修改配置文件:
1.Linux服务器端:
(1)监听器配置文件:$ vi ORACLE_HOME/network/admin/listener.ora
(2)配置tnsnames.ora:$ vi ORACLE_HOME/network/admin/tnsnames.ora
(3)配置sqlnet.ora:$vi ORACLE_HOME/network/admin/sqlnet.ora
若 ORACLE_HOME/network/admin/ 目录下没有sqlnet.ora,可查看 ORACLE_HOME/network/admin/samples/ 下是否有sqlnet.ora文件,如果有,将其复制到 ORACLE_HOME/network/admin/ 下。
sqlnet.ora修改内容,添加如下两行命令:
SQLNET.AUTHENTICATION_SERVICES= (NONE) --数据库用户名及口令验证
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) --
2.Windows客户端(连接方式,连接描述符)
ORACLE_HOME/network/admin/sqlnet.ora
ORACLE_HOME/network/admin/tnsnames.ora

五、启动并远程访问数据库
1、Linux服务器端:
(1)$ sqlplus /nolog
(2)$ connect sys/oracle as sysdba
或者将(1)和(2)合为一句:$ sqlplus sys/oracle as sysdba
(3)SQL> startup --启动数据库实例
SQL> quit
(4)$ lsnrctl
LSNRCTL> start --启动监听器
LSNRCTL> quit
2、Windows客户端:
sqlplus sys/oracle@orcl as sysdba 或 sqlplus scott/tiger@orcl
第一次连scott用户,可能是锁定状态,可为其解锁:
(1)以DBA的身份登录:conn sys/password as sysdba;
(2)解锁:alter user scott account unlock;
(3)弹出一个修改密码的对话框,修改密码:conn scott/tiger
eg:
SQL> conn sys/sys as sysdba;
Connected.
SQL> alter user scott account unlock;
User altered.
SQL> commit;
Commit complete.
SQL> conn scott/tiger --请输入新密码,并确认后OK
Password changed
Connected.

六、Oracle的启动与关闭
1、启动
STARTUP OPEN:STARTUP缺省的参数就是OPEN,打开数据库,允许数据库的访问。当前实例的控制文件中所描述的所有文件都已经打开。
STARTUP MOUNT:MOUNT数据库,仅仅给DBA进行管理操作,不允许数据库的用户访问。仅仅只是当前实例的控制文件被打开,数据文件未打开。
STARTUP NOMOUNT:仅仅通过初始化文件,分配出SGA区,启动数据库后台进程,没有打开控制文件和数据文件,不能任何访问数据库。
STARTUP PFILE = filename:以filename为初始化文件启动数据库,不是采用缺省初始化文件。
STARTUP FORCE:中止当前数据库的运行,并开始重新正常的启动数据库。
STARTUP RESTRICT:只允许具有RESTRICTED SESSION权限的用户访问数据库。
STARTUP RECOVER:数据库启动,并开始介质恢复。
2、关闭
SHUTDOWN有四个参数:NORMAL、TRANSACTIONAL、IMMEDIATE、ABORT。缺省不带任何参数时表示是NORMAL。
SHUTDOWN NORMAL:不允许新的连接、等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
SHUTDOWN TRANSACTIONAL:不允许新的连接、不等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
SHUTDOWN IMMEDIATE:不允许新的连接、不等待会话结束、不等待事务结束、做一个检查点并关闭数据文件。没有结束的事务是自动rollback的。启动时不需要实例恢复。
SHUTDOWN ABORT:不允许新的连接、不等待会话结束、不等待事务结束、不做检查点且没有关闭数据文件。启动时自动进行实例恢复。

alter database close normal; --mounted
alter database dismount; --nomount
shutdown --close
  • 点赞
  • 收藏
  • 分享
  • 文章举报
iteye_13297 发布了0 篇原创文章 · 获赞 0 · 访问量 16 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: