oracle常用命令积累

Oracle迁移过程

重要:首先确定自己使用的数据库实例,在oracle用户下进行切换再行登陆操作。

1、        切换使用实例

export ORACLE_SID = mee  (实例名称例如:orcl)

2、        使用dba登陆

sqlplus / as sysdba

 

 

【一】    导出导入数据库文件

注意事项:所以还原数库前请先行查询备份数据的字符集,修改新库实例中的字符集(同一实例可不考虑),确保数据交易前后字符集一致,不然会出现乱码问题,影响所有数据导入。

 

1、导出数据库文件

expdp trswcm52/[email protected]  DIRECTORY=db_bak DUMPFILE=trswcmv7_$DATE.dmp logfile=trswcmv7_$DATE.log

DIRECTORY:数据库中创建的文件夹目录

创建文件夹目录:CREATE OR REPLACE DIRECTORY db_bak AS ‘/u01/backup/‘;

赋予目录地址读写权限:GRANT read,write ON DIRECTORY db_bak TO public;

查询目录列表: select * from dba_directories;

 

2、创建表空间 TRSWCM5219(表空间名称)    

create tablespace TRSWCM5219

datafile ‘/data/tablespace/TRSWCM5219.dbf‘ size 30G

autoextend on

maxsize unlimited

default storage (initial 1024K

Next 1024K

minextents 1

maxextents unlimited

pctincrease 0);

3、增加数据文件

ALTER TABLESPACE TRSWCM5219 ADD DATAFILE  ‘/data/tablespace/TRSWCM5219_1.dbf‘ SIZE 10G;

autoextend on

next 50M maxsize 20480;

ALTER TABLESPACE TRSWCM5219 ADD DATAFILE  ‘/data/tablespace/TRSWCM5219_2.dbf‘ SIZE 10G;

autoextend on

next 50M maxsize 20480;

4、创建用户,赋予表空间

create user TRSWCM5219(用户名称) identified by TRSWCM5219(用户密码) default tablespace TRSWCM5219(默认表空间);

5、修改用户的表空间权限

alter user TRSWCM5219(用户名称) default tablespace TRSWCM5219(表空间名称可指向其他表空间);

6、赋予用户所有权限

grant connect,resource,dba to TRSWCM5219;

7、导入数据库备份脚本(将原表空间导入到新表空间中,老用户变更为新用户)

impdp TRSWCM5219/TRSWCM5219 DIRECTORY=db_bak DUMPFILE=trswcmv7.dmp logfile=trswcmv7_20191208_no3.log REMAP_SCHEMA=TRSWCM52:TRSWCM5219 remap_tablespace=TRSWCM52:TRSWCM5219

REMAP_SCHEMA=TRSWCM52:TRSWCM5219:(还原前用户名称:还原后用户名称)

remap_tablespace=TRSWCM52:TRSWCM5219:(还原前表空间名称:还原后表空间名称)

危险操作:

8、删除指定用户

drop user TRSWCM5219 cascade;

9、下线指定表空间

alter tablespace TRSWCM5219 offline;

10、删除表空间数据及文件

drop tablespace TRSWCM5219 including contents and datafiles;

11、解锁指定用户

ALTER USER TRSWCM5219 ACCOUNT UNLOCK;

12、查询实例表空文件

select name from v$datafile;

触发器

注意事项:由于原库中的触发器可能存在语句中写死问题,所以迁移后对比触发器按一下进行创建。(同实例中还原会有该问题,新建实例还原数据库不存在该类问题)

 

1、 查询数据库所有触发器的语句

SELECT DBMS_METADATA.GET_DDL(‘TRIGGER‘, U.OBJECT_NAME)

FROM USER_OBJECTS U

WHERE OBJECT_TYPE = ‘TRIGGER‘;

SELECT * FROM ALL_TRIGGER WHERE OWNER = ‘TRSWCM5219‘ ORDER BY TRIGGER_NAME ASC;

2、 删除实例数据库指定触发器

DROP TRIGGER CCICEDNEW_VIEW_UPDATE_D_TRIG;

3、 按1中查询出的语句进行创建触发器

CREATE OR REPLACE TRIGGER "TRSWCM5219"."CCICEDNEW_VIEW_UPDATE_D_TRIG" AFTER DELETE ON "TRSWCM5219"."WCMDOCUMENT"

FOR EACH ROW

BEGIN

INSERT INTO "CCICEDNEW_VIEW_UPDATE$_TEMP" VALUES("CCICEDNEW_VIEW_UPDATE$_SEQ".NEXTVAL,:OLD."DOCID",3,0);

END;

4、 修改表空间是否启动

ALTER TRIGGER "TRSWCM5219"."CCICEDNEW_VIEW_UPDATE_D_TRIG" DISABLE;

【二】修改数据库表空间目录位置

注意事项:

【1】保证读取文件路径存在

【2】保证alter修改文件目录的文件,拥有者和群组必须和之前的表空见一直(权限一致)

【3】备份数据库

【4】生产环境虚机镜像备份

 

生产环境WCM数据库 -----【重要】

1、下线实例表空间 

alter tablespace TRSWCM52 offline;

2、拷贝表空间文件到新目录下

cp /u01/tablespace/trswcm52.dbf /data/tablespace/trswcm52.dbf

cp /u01/tablespace/trswcm52_1.dbf  /data/tablespace/trswcm52_1.dbf

cp /u01/tablespace/trswcm52_2.dbf /data/tablespace/trswcm52_2.dbf

3、进入sqlplus / as sysdba,修改表空间文件的目录到新目录下

alter tablespace trswcm52 rename datafile ‘/u01/tablespace/trswcm52.dbf‘ to  ‘/data/tablespace/trswcm52.dbf‘;

alter tablespace trswcm52 rename datafile ‘/u01/tablespace/trswcm52_1.dbf‘ to ‘/data/tablespace/trswcm52_1.dbf‘;

alter tablespace trswcm52 rename datafile ‘/u01/tablespace/trswcm52_2.dbf‘ to ‘/data/tablespace/trswcm52_2.dbf‘;

4、重构recover新目录的实例表空间文件

alter database recover datafile ‘/data/tablespace/trswcm52.dbf‘;

alter database recover datafile ‘/data/tablespace/trswcm52_1.dbf‘;

alter database recover datafile ‘/data/tablespace/trswcm52_2.dbf‘;

5、上线实例表空间

alter tablespace TRSWCM52 online;

6、查询时表空间及路径是否已更改

select name from v$datafile;

【三】常用oracle语句

1、查询用户所有表、视图等。

select * from all_tab_comments;

2、查询本用户的表、视图等信息。

select * from user_tab_comments;

3、查询所有用户的表的列名和注释

select * from all_col_comments;

4、查询本用户的表的列名和注释

select * from user_col_comments;

5、查询所有用户的表的列名等信息(详细但没有备注)

select * from all_tab_colums;

6、查询本用户的表的列名等信息(详细但没有备注)

select * from user_tab_colums;

7、表连接查询

(方法一:多表连接查询)

select t.table_name , t.comments from user_tab_comments t;

(方法二:from 子查询查询)

select r1 , r2 , r3 , r5

from (select a.table_name r1 , a.column_name r2 , a.comments r3

from user_col_comments a),

(select t.table_name r4 , t.comments r5 from user_tab_comments t)

where r4=r1;

8、查看当前用户的缺省表空间

select username,default_tablespace from user_users;

9、查看用户下所有的表

select * from user_tables;

10、解锁用户

alter user scott account unlock;

11、重设用户密码

scott/tiger为默认用户,alter user scott identified by tiger;

12、创建表

create table t1(c1 type 约束,c2 type 约束(not null,unique,check,primary key));

13、查看当前系统时间

select sysdate from dual;

14、修改oracle中内存占用大小

show parameter sga; --显示内存分配情况

alter system set sga_max_size=200m scope=spfile; --修改占用内存的大小

15、查询表空间是否自动扩展

select file_name,autoextensible,increment_by from dba_data_files;

原文地址:https://www.cnblogs.com/zhongxiang/p/12566217.html

时间: 2024-10-12 21:17:18

oracle常用命令积累的相关文章

ORACLE常用命令

1 如何查看数据库中都有什么表? select * from sys.user_tables; 2 如何链接数据库 sqlplus /nolog;conn sys/oracle as sysdba; 3 如何启动数据库 startup; 4 查看ORACLE实例结构 desc V$instance; 5 查看用户默认表空间.临时表空间信息 select distinct username,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE from dba_users

Oracle 常用命令小结

1.当前数据库中查看建表语句 select dbms_metadata.get_ddl('TABLE','表名') from dual; 2. Oracle 常用命令小结,布布扣,bubuko.com

一些常用命令积累

netapp卷扩容: df -Ah #查看磁盘总使用情况 vol size database +100g #给database卷扩容 一些常用命令积累,布布扣,bubuko.com

Data Base Oracle 常用命令

Data Base  Oracle 常用命令 1.登录:(不需要密码,属于管理员权限) conn /as sysdba 2.查看数据库存储位置: select name from v$datafile; 3.创建表空间: 语法:create tablespace 表空间名称 datafile '数据文件的路径' size 大小; 示例:create tablespace test_db datafile 'D:\ORACLE\ORADATA\ORCL\test_db.dbf' size 3000

oracle常用命令【转载】

oracle常用命令 一.Oracle数据库实例.用户.目录及session会话查看: 1.ORACLE SID查看设置 查看SID.用户名 $ env|grep SID .select * from v$instance.select instance_name,host_name from v$instance; 查看数据库所有用户及用户状态:SQL> select usernames,account_status from dba_users; 设置SID $ export ORACLE_

Linux常用命令积累

浏览目录命令: 1.cd  打开目录 cd  pp cd .. cd / cd   切换到用户自家目录 cd  /usr/bin    切换到/usr/bin  目录 cd - 回到最近一个目录 2.显示当前目录 pwd 3.显示当前目录列表 ls     目录 ls -a    显示隐藏文件 ls -l  简写成: ll    显示时间.拥有权等, 其中d 表示为目录 tree  以树形式显示目录,里层也能看到 浏览文件命令: 1.less  file1 查看文件file1单页内容 2.mor

Oracle常用命令大全

Oracle常用命令大全(很有用,做笔记) Posted on 2010-06-10 11:08 chinaifne 阅读(2) 评论(0)  编辑 收藏 一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b.关闭ORACLE系统 ora

linux下 oracle常用命令

打开图形化窗口: 1)Database Configuration Assistant windows    (添加数据库实例) $ dbca 2)Oracle Net Configuration Assistant windows  (配置监听) $ netca 3)打开EM $ oemapp dbastudio                            (打开企业管理器图形界面) $ opemapp console                             (打开企

linux 常用命令积累

前几天在 iMooc 上随便看了一个公开课,学到几个常用命令,记录在此,慢慢积累.感觉遇到一个学一个,有时候比按一本书从头开始按部就班地学习要更有记忆点. 1. echo $? 在程序运行之后,此命令可以打印程序返回值.比如main中返回的0或1等. 2. cat t.txt 显示到终端.(cat命令应该是连接,这里应该是省略了标准输出) 3. ./a.out  |  > t.txt  管道,输出重定向到t.txt文件,这里是覆盖方式.     ./a.out  |  >> t.txt