Oracle数据库执行脚本常用命令小结

1. 执行一个SQL脚本文件

代码如下:

sqlplus user/pass@servicename<file_name.sql

代码如下:

SQL>start file_names

代码如下:

SQL>@ file_name

我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。

@与@@的区别是什么?

@等于start命令,用来运行一个sql脚本文件。

@命令调用当前目录下的,或指定全路径,或可以通过SQLPATH环境变量搜寻到的脚本文件。该命令使用是一般要指定要执行的文件的全路径,否则从缺省路径(可用SQLPATH变量指定)下读取指定的文件 www.111Cn.net。

@@用在sql脚本文件中,用来说明用@@执行的sql脚本文件与@@所在的文件在同一目录下,而不用指定要执行sql脚本文件的全路径,也不是从SQLPATH环境变量指定的路径中寻找sql脚本文件,该命令一般用在脚本文件中。

如:在c:temp目录下有文件start.sql和nest_start.sql,start.sql脚本文件的内容为:

@@nest_start.sql – - 相当于@ c:tempnest_start.sql

则我们在sql*plus中,这样执行:

SQL> @ c:tempstart.sql

2. 重新运行上一次运行的sql语句

SQL>/

3. 将显示的内容输出到指定文件

代码如下:

SQL> SPOOL file_name

在屏幕上的所有内容都输入到该文件中,包括你输入的sql语句。
通常情况下,我们使用SPOOL方法,将数据库中的表导出为文本文件的时候会采用两种方法,如下述:

方法一:采用以下格式脚本

set colsep ‘|'; –设置|为列分隔符
set trimspool on;
set linesize 120;
set pagesize 2000;
set newpage 1;
set heading off;
set term off;
set num 18;
set feedback off;
spool 路径+文件名;
select * from tablename;
spool off;

方法二:采用以下脚本

set trimspool on
set linesize 120
set pagesize 2000
set newpage 1
set heading off
set term off
spool 路径+文件名
select col1||','||col2||','||col3||','||col4||'..' from tablename;
spool off

附一些基本命令

1、得到数据库名和创建日期

代码如下:

SELECT name, created, log_mode, open_mode FROM v$database;

2、ORACLE数据库的计算机的主机名,ORACLE数据库的实例名及ORACLE数据库管理系统的版本信息

代码如下:

SELECT host_name, instance_name, version FROM v$instance;

3、为了知道oracle数据库版本的一些特殊信息

代码如下:

select * from v$version;

4、获取控制文件名字

代码如下:

select * from v$controlfile;

5、得到Oracle数据库的重做日志配置信息

代码如下:

SELECT group#, members, bytes, status, archived FROM v$log;
select GROUP#,MEMBER from v$logfile;

6、获取oracle的每个重做日志(成员)文件所存放的具体位置

代码如下:

select * from v$logfile;

7、知道ORACLE数据库的备份和恢复策略和归档文件的具体位置

代码如下:

archive log list

8、知道ORACLE数据库中到底有多少表空间以及每个表空间的状态

select tablespace_name, block_size, status, contents, logging from dba_tablespaces;
select tablespace_name, status from dba_tablespaces;

9、知道每个表空间存在哪个磁盘上以及文件的名字等信息

SELECT file_id, file_name, tablespace_name, status, bytes from dba_data_files;
select file_name, tablespace_name from dba_data_files;

10、知道Oracle数据库系统上到底有多少用户和都是什么时候创建的

select username,created from dba_users;
select username, DEFAULT_TABLESPACE from dba_users;

11、从控制文件中取出信息涉及到以下一些相关的命令

select * from v$archived
select * from v$archived_log
select * from v$backup
select * from v$database
select * from v$datafile
select * from v$log
select * from v$logfile
select * from v$loghist
select * from v$tablespace
select * from v$tempfile

12、控制文件由两大部份组成:可重用的部份和不可重用的部分。可重用的部分的大小可用

CONTROL_FILE_RECORD_KEEP_TIME参数来控制,该参数的默认值为7天,即可重用的部份的内容保留7天,一周之后这部份的内容可能被覆盖。可重用的部份是供恢复管理器来使用的,这部份的内容可以自动扩展。Oracle数据库管理员可以使用CREAT DATABASE或 CREAT CONTROLFILE语句中的下列关键字(参数)来间接影响不可重用的部份的大小:

MAXDATAFILES
MAXINSTANCES
MAXLOGFILES
MAXLOGHISTORY
MAXLOGMEMBERS

13、查看控制文件的配置

SELECT type, record_size, records_total, records_used FROM v$controlfile_record_section;

14、如果您的显示被分成了两部分,您需要使用类似于set pagesize 100的SQL*Plus命令先格式化输出。有关的格式化输出命令有以下这些:

record_size: 为每个记录的字节数。
records_total:为该段所分配的记录个数。
records_used:为该段所使用的记录个数。

15、知道控制文件中的所有数据文件(DATAFILE),表空间(TABLESPACE),和重做日志(REDO LOG)所使用的记录情况

SELECT type, record_size, records_total, records_used
FROM v$controlfile_record_section
WHERE type IN ( ‘DATAFILE', ‘TABLESPACE', ‘REDO LOG');

16、获取控制文件名字

select value from v$parameter where name ='control_files';
或者:select * from v$controlfile

17、如何在一个已经安装的Oracle数据库中添加或移动控制文件呢?

以下是在一个已经安装的Oracle数据库中添加或移动控制文件的具体步骤:

a、利用数据字典v$controlfile来获取现有控制文件名字。

b、正常关闭Oracle数据库。

c、将新的控制文件名添加到参数文件的CONTROL_FILES参数中。

d、使用操作系统的复制命令将现有控制文件复制到指定位置。

e、重新启动Oracle数据库。

f、利用数据字典v$controlfile来验证新的控制文件名字是否正确。

g、如果有误重做上述操作,如果无误删除无用的旧控制文件。

注: 如果您使用了服务器初始化参数文件(SPFILE),您不能关闭Oracle数据库而且应该在第3步使用alter system set control_files的Oracle命令来改变控制文件的位置。

SQL> alter system set control_files =
‘D:Disk3CONTROL01.CTL',
‘D:Disk6CONTROL02.CTL',
‘D:Disk9CONTROL03.CTL' SCOPE=SPFILE;

18、由于控制文件是一个极其种要的文件,除了以上所说的将控制文件的多个副本存在不同的硬盘上的保护措施外,在数据库的结构变化之后,您应立即对控制文件进行备份。可以用Oracle命令来对控制文件进行备份:

alter database backup controlfile to ‘D:backupcontrol.bak';

19、您也可将备份到一个追踪文件中。该追踪文件包含有重建控制文件所需的SQL语句。可使用以下SQL语句来产生这一追踪文件:

alter database backup controlfile to trace;

20、正常关闭oracle命令

shutdown immeditae

PS:oracle客户端连接的文件配置:

oracle的目录/network/ADMIN/tnsnames.ora

内容:

MIMI(客户端连接的名称) =

(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.254)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = NTDB.RUNNER)
)
)

修改表结构

alter table m_gl_gls3_history add (aaaaa varchar2(20),bbbbb varchar2(10))
alter table m_gl_gls3_history modify (aaaaa varchar2(10))
--要改变表中的字段的类型或缩小字段长度,该字段的所有记录值必须为空。
--如果改字段存在记录值,则该字段长度只能扩大,不能缩小。
alter table m_gl_gls3_history drop (aaaaa , bbbbb )

(0)

相关推荐

  • oracle数据库导入导出命令解析

    Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失). Oracle有个好处,虽然你的电脑不是服务器,但是你装了oracle客户端,并建立了连接(通过Net Configuration Assistant添加正确的服务命名,其实你可以想成是客户端与服务器端 修了条路,然后数据就可以被拉过来了) 这样你可以把数据导出到本地,虽然可能服务器离你很远.

  • oracle创建表的方法和一些常用命令

    1.主键和外键主键:关系型数据库中的一条记录中有若干个属性,若其中的某一个属性组(注意是组,可以是一个,也可以是多个)能唯一标识一条记录,那么该属性组就是主键外键:关系型数据库表中的一列或者某几列的组合,它的值与另外一张表的某一列或者某几列相匹配,且为另一张表的主键(即这张表的某一列或某几列是另外一张表的主键,称这一列或几列为另外一张表的外键) 注1:一张表主键只能有一个,可以有多个外键以及唯一索引 注2:Oracle数据库共有5个约束:主键.外键.非空.唯一.条件非空:这个列的值不能为空(NO

  • oracle comment命令用法示例分享

    oracle中用comment on命令给表或字段加以说明,语法如下: 复制代码 代码如下: COMMENT ON  { TABLE [ schema. ]    { table | view }  | COLUMN [ schema. ]    { table. | view. | materialized_view. } column  | OPERATOR [ schema. ] operator  | INDEXTYPE [ schema. ] indextype  | MATERIAL

  • Oracle数据库执行脚本常用命令小结

    1. 执行一个SQL脚本文件 复制代码 代码如下: sqlplus user/pass@servicename<file_name.sql 或 复制代码 代码如下: SQL>start file_names 或 复制代码 代码如下: SQL>@ file_name 我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理. @与@@的区别是什么? @等于start命令,用来运行一个sql脚本文件. @命令调用

  • oracle的归档模式 ORACLE数据库归档日志常用命令

    --连接恢复管理器 C:\Documents and Settings\mengzhaoliang>rman target/ --归档日志列表 RMAN> list archivelog all; --删除物理文件不存在的归档日志 RMAN> delete expired archivelog all; --删除7天前的归档日志 RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7'; oracle的归档模式 一.查看ora

  • Linux操作系统操作MySQL常用命令小结

    下面给大家分享mysql常用命令, -- 启动数据库 service myslqd start; -- 进入MySQL -u root -p/mysql -h localhost -u root -p DatabaseName; -- 列出数据库 show database; -- 创建数据库 create database XXXX; -- 选择数据库 use DatabaseName; -- 罗列表 show table; -- 显示表格的属性 show columns from table

  • docker比赛提交常用命令小结

    登录账户 export DOCKER_REGISTRY=registry.cn-hangzhou.aliyuncs.com/cqy_test docker login $DOCKER_REGISTRY --username=西交陈清源 创建自己的镜像 拉取基础镜像 docker pull registry.cn-shanghai.aliyuncs.com/tcc-public/python:3 #基础镜像地址 #https://tianchi.aliyun.com/forum/postDetai

  • Unix操作系统常用命令(小结)

    一.关于档案/目录处理的命令  1.ls--列目录   这是最基本的档案指令. ls 的意义为 "list",也就是将某一个目录或是  某一个档案的内容显示出来. 格式:ls -1ACFLRabcdfgilmnopqrstux -W[sv] [files] ls 的常用参数如下: -a : 在 UNIX 中若一个目录或文件名字的第一个字符为 "." , 则使用 ls  将不会显示出这个档案的名字,我们称此类档案为隐藏档.如 .profile..tcshrc等,如果我

  • linux压缩常用命令小结

     tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的参数是根据需要在压缩或解压档案时可选的. -z:有gzip属性的 -j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程 -O:将文件解开到标准输出 下面的参数-f是必须的 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名. # tar -cf all

  • centos7下搭建ZooKeeper3.4中间件常用命令小结

    一.下载解压 1.Zookeeper简介 Zookeeper 作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储,但是 Zookeeper 并不是用来专门存储数据的,它的作用主要是用来维护和监控你存储的数据的状态变化.通过监控这些数据状态的变化,从而可以达到基于数据的集群管理. 2.下载 环境版本 centos7 zookeeper 3.4.14 [root@localhost mysoft]$ cd /usr/local

  • 在linux shell脚本中root切换到普通用户执行脚本或命令的方法

    需求: 安装deb包,设置程序安装后启动,不需要root权限启动程序 | 不能用root权限启动 其他开机启动选项 方法:root临时降低权限 secUser=`who am i | awk '{print $1}'` #echo $secUser su $secUser -c <指令> > /dev/null 2>&1 & #这一条命令的执行权限是临时的,只在本条语句起作用 id -u # 结果为0,还是root用户权限 附: su --help -c, --co

  • conda安装tensorflow和conda常用命令小结

    1. 在conda的一个环境下安装tensorflow 1)先查看它的各个版本: conda search tensorflow 或者 conda search tensorflow-gpu 2)选择一个版本安装: conda install tensorflow=0.10.0rc0 其他命令 更新: conda update xxx 删除包: conda remove xxx 2. conda的一些命令 添加环境: (e.g. 名称为py36,python版本为3.6) conda creat

  • MySQL数据库基础入门之常用命令小结

    本文实例讲述了MySQL数据库基础入门之常用命令.分享给大家供大家参考,具体如下: 接上一篇:MySQL数据库主从同步实战过程 mysql命令介绍 mysql 是数据库管理命令 通过mysql --help来查看相关参数及使用说明 mysql --help #mysql数据库管理命令 Usage: mysql [OPTIONS] [database] #语法格式 --help #查看帮助文档 --auto-rehash #自动补全功能 -A, --no-auto-rehash #不需自动补全 -

随机推荐