`
xdy2008
  • 浏览: 54211 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

oracle 启动

阅读更多
Oracle9I开始,取消了服务器管理器(svrmgl)和internal用户,数据库的启动和停止都是通过sql*plus来完成!Oracle10g可以通过浏览器来启动和停止数据库服务!这里主要说说9I下的启动和停止服务,下面的命令在8i下也可以使用
要启动或者停止服务,必须拥有sysdba的权限。可以使用两中方式连接
第一种,以sys用户连接
c:\>;sqlplus sys/change_on_install as sysdba;
进入sql*plus环境;(注意,ORACLE9I在安装的时候需要你自己设定sys和system的口令,并且不能才用ORACLE9I以前这两个用户的默认口令,这主要是为了保证数据库系统的安全,我为了好记忆,在安装完成后立刻恢复了默认的口令)
第二种:
C:\>;sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期一 4月 26 09:42:00 2004

Copyright (c) 1982, 2002>>, Oracle Corporation.  All rights reserved.

SQL>; connect /as sysdba
已连接。
SQL>;
在进入后就可以进行下面的操作了!
先说关闭数据库
shutdown有四个参数,四个参数的含义如下:
Normal 需要等待所有的用户断开连接
Immediate 等待用户完成当前的语句
Transactional 等待用户完成当前的事务
Abort 不做任何等待,直接关闭数据库
normal需要在所有连接用户断开后才执行关闭数据库任务,所以有的时候看起来好象命令没有运行一样!在执行这个命令后不允许新的连接
immediate在用户执行完正在执行的语句后就断开用户连接,并不允许新用户连接。
transactional 在拥护执行完当前事物后断开连接,并不允许新的用户连接数据库。
abort 执行强行断开连接并直接关闭数据库。
前三种方式不回丢失用户数据。第四种在不的已的情况下,不建议采用!
数据库的启动
数据库启动使用startup命令,它有三种情况
第一种:不带参数,启动数据库实例并打开数据库,以便用户使用数据库,在多数情况下,使用这种方式!
第二种:带nomount参数,只启动数据库实例,但不打开数据库,在你希望创建一个新的数据库时使用,或者在你需要这样的时候使用!
第三种:带mount参数,在进行数据库更名的时候采用。这个时候数据库就打开并可以使用了!




前几天重新安装了数据库服务器,在服务器上使用都一切正常。然后在我的客户端配置一个tns服务名,通过sqlplus命令来连接,确报错:
C:\Documents and Settings\myname>sqlplussys/password@orcl118
SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 3月 1 18:41:06 2011
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
ERROR:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务

查看服务器端的listener.ora,内容如下:
# listener.ora Network Configuration File: /usr/app/oracle/product/10.2/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /usr/app/oracle/product/10.2/db_1)
      (PROGRAM = extproc)
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = oraclesvr)(PORT = 1521))
    )
  )

SQL> show parameter service_name
NAME                                TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
service_names                       string
orcl
没有发现问题,再看客户端的tnsnames.ora,如下:

ORCL118 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.118)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )
也没发现问题了,客户端删除再重建了几次“本地net服务名配置”,没有任何作用。对比了tnsnames文件中其他的连接,配置信息几乎完全一致,其他连接确可以正常连接。

然后我通过tnsping来ping数据库服务器Ip和端口:

C:\Documents and Settings\myname>tnsping 192.168.0.118
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 02-3月 -2011 11:00:
Copyright (c) 1997, 2005, Oracle.  All rights reserved.
已使用的参数文件:
D:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
已使用 EZCONNECT 适配器来解析别名
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=192.168.0.118))(ADDRESS=(PRO
TNS-12560: TNS: 协议适配器错误

C:\Documents and Settings\myname>tnsping orcl118
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 02-3月 -2011 11:18:
Copyright (c) 1997, 2005, Oracle.  All rights reserved.
已使用的参数文件:
D:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora

已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192
TNS-12560: TNS: 协议适配器错误

看来tnsping都不行,肯定就不要指望连接使用了。

再用telnet看看能不能连接这个IP的1521端口。
C:\Documents and Settings\myname>telnet 192.168.0.118 1521
正在连接到192.168.0.118 ...不能打开到主机的连接, 在端口 1521: 连接失败

进一步证实,应该就是1521端口问题了。

通过netca界面方式删除服务器端的监听,重新配置监听,重启机器。关闭服务器端的防火墙后,重启监听和数据库,再通过sqlplus连接成功。
服务器端:
$ lsnrctl stop
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 02-3æ -2011 14:15:46
Copyright (c) 1991, 2005, Oracle.  All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
The command completed successfully
$ which lsnrctl   查看使用的命令位置,在此没作用
/usr/app/oracle/product/10.2/db_1/bin/lsnrctl
$ lsnrctl start 启动监听
$ lsnrctl status 查看监听状态

客户端:
C:\Documents and Settings\myname>sqlplussys/password@orcl118as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 3月 2 15:47:50 2011
Copyright (c) 1982, 2005, Oracle.  All rights reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

若数据库的服务没有启动,远程连接还是会报错:
C:\Documents and Settings\myname>sqlplussys/password@orcl118as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 3月 2 18:18:14 2011
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
ERROR:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务

请输入用户名:

要想在不启动数据库服务的时候能连接上,就需要修改数据库服务器端的监听配置文件listener.ora,在里面增加以下段(加粗)
$ cat listener.ora
# listener.ora Network Configuration File: /usr/app/oracle/product/10.2/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /usr/app/oracle/product/10.2/db_1)
      (PROGRAM = extproc)
    )
  (SID_DESC =
     (GLOBAL_DBNAME = orcl)
     (ORACLE_HOME = /usr/app/oracle/product/10.2/db_1)
     (SID_NAME = orcl)
   )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = oraclesvr)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )
重启监听后,再连接。
C:\Documents and Settings\myname>sqlplussys/password@orcl118as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 3月 2 18:23:48 2011
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
已连接到空闲例程。
SQL>


附录:

linux下启动和关闭防火墙


1) 重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off

2) 即时生效,重启后失效
开启: service iptables start
关闭: service iptables stop

需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。

在开启了防火墙时,做如下设置,开启相关端口,
修改/etc/sysconfig/iptables 文件,添加以下内容:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
分享到:
评论

相关推荐

    Linux下oracle启动和监听

    Linux 下 Oracle 启动和监听 Oracle 数据库是重量级的,其管理非常复杂,将其在 Linux 平台上的启动和关闭步骤整理如下: 一、安装和配置 Oracle 在 Linux 平台上安装 Oracle 之后,需要创建 Oracle 系统用户,并...

    oracle 启动过程详解

    Oracle 启动过程详解 Oracle 启动过程是 Oracle 数据库的核心组件之一,对于初识 Oracle 的人来说,了解 Oracle 启动过程非常重要。本文将详细解释 Oracle 启动过程的三个步骤:启动数据库到 Nomount 状态、启动...

    Oracle启动管理命令

    1. **Oracle启动过程** Oracle数据库的启动通常分为三个阶段:装载(Mount)、打开(Open)和恢复(Restore)。在Windows环境中,可以通过SQL*Plus或者使用操作系统级别的脚本来进行操作。 - **SQL*Plus启动**:...

    oracle启动脚本

    - **Oracle启动脚本**:指的是用于启动Oracle数据库服务的一系列自动化命令集合。这种脚本通常被设计成能够自动完成启动过程中的各项任务,从而简化操作流程。 #### 描述解析 - **Oracle 10g启动脚本**:此处指的是...

    oracle启动项配置快捷

    ### Oracle启动项配置详解 #### 一、Oracle启动项配置概览 在Oracle数据库管理过程中,启动项配置是一项重要的操作,它直接关系到数据库服务能否正常启动与运行。本篇文章将围绕“Oracle启动项配置快捷”这一主题...

    Oracle启动

    Oracle数据库step by step 开机启动,非常详细。

    Oracle 启动与关闭

    "Oracle 启动与关闭" Oracle 启动与关闭是数据库管理中最为重要的两个步骤。要启动和关闭数据库,必须要以具有 Oracle 管理员权限的用户登陆,通常也就是以具有 SYSDBA 权限的用户登陆。 Oracle 启动过程有三步:...

    Oracle启动与关闭批处理文件

    ### Oracle启动与关闭批处理文件知识点解析 #### 一、批处理文件的作用及背景 - **背景介绍**:Oracle数据库是广泛应用于企业级环境中的关系型数据库管理系统之一。在安装Oracle 11g之后,可能会遇到系统启动变慢...

    oracle启动的三个阶段

    Oracle数据库的启动过程包含了三个关键阶段,分别是启动到nomount状态、启动到mount状态以及启动到open状态。每个阶段都有其特定的任务和目的,确保数据库能够正确、安全地运行。 1. 启动到nomount状态: 在这个...

    Oracle启动停止服务文件

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其服务的启动和停止对于系统的日常管理和维护至关重要。本压缩包文件提供了一种便捷的方式来管理Oracle服务,特别是针对名为"orcl"的服务实例。通过提供的...

    linux下oracle启动关闭及常用命令

    ### Linux 下 Oracle 启动关闭及常用命令 #### 一、概述 在 Linux 系统中管理和操作 Oracle 数据库是一项常见的任务。对于数据库管理员(DBA)而言,掌握如何在 Linux 环境下启动、关闭 Oracle 数据库以及常用的...

    windows 启动关闭Oracle监听和服务

    提供的压缩包文件“Oracle启动.bat”和“Oracle关闭.bat”可能是预先配置好的批处理脚本,用于自动化启动和关闭Oracle监听和/或服务。用户只需双击运行即可完成操作,简化了日常管理。 “重新配置Oracle监听.bat”...

    oracle启动

    ### Oracle启动及常用命令详解 #### 一、Oracle启动与停止概述 在Oracle数据库管理中,正确地启动和停止数据库是非常重要的操作。这些操作确保了数据的一致性和系统的稳定性。本文将详细介绍Oracle数据库的启动...

    ORACLE启动报错常见问题解决

    本文将详细解析ORACLE启动报错的常见问题及其解决方案。 首先,针对ORA-12500:“TNS:监听程序无法启动专用服务器进程”这个问题,可能的解决方法包括: 1. 注释初始化文件(init.ora或spfile.ora)中的`mts`配置...

    oracle启动批处理

    本文将详细探讨Oracle启动批处理的相关知识点。 首先,理解“Oracle启动批处理”这一概念,它指的是通过编写批处理脚本(通常是Windows的.bat文件或Linux的.sh文件),来自动化控制Oracle数据库的启动、关闭或者...

    Oracle启动和关闭命令.pdf

    Oracle 启动和关闭命令 Oracle 数据库的启动和关闭是 DBA 的必备技能,以下是 Oracle 启动和关闭命令的详细介绍。 一、Oracle 启动命令 Oracle 启动命令可以分为七种,分别是: 1..Startup nomount:非安装启动...

    解决Oracle启动失败故障.pdf

    解决 Oracle 启动失败故障 Oracle 数据库是一种关系型数据库管理系统,但是在实际操作中,可能会出现启动失败故障。这种故障可能是由于权限控制问题、SELinux 功能的开启、根分区磁盘容量不够等原因引起的。本文将...

    oracle启动项

    oracle start 启动项目介绍,一般忘记的要以在服务里手动启动该项目即可

    Oracle启动停止服务bat

    "Oracle启动停止服务bat"指的是通过批处理脚本(.bat文件)来便捷地管理Oracle数据库服务,避免了通过Windows服务管理器手动操作的繁琐过程。这种批处理脚本在Windows操作系统上特别实用,尤其是对于Windows 7及以上...

Global site tag (gtag.js) - Google Analytics