视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle批量建表空间
2020-11-09 12:07:33 责编:小采
文档


最近遇到一个问题,就是在数据迁移的时候,要分析一下别人的表结构。当时把别人的库的表空间,表结构,数据导出来了一份。回来后

最近遇到一个问题,就是在数据迁移的时候,要分析一下别人的表结构。当时把别人的库的表空间,表结构,数据导出来了一份。回来后要把这些表空间创建到自己库中,用于分析以前的数据库。

我当时是把用户的表和表空间导入到一个csv文件中,把数据的前1000条导入dmp中。

表有一千多张,表空间有一百多个,要把这一百多个文件建立起来,要是一个一个的建会累死人,我就想能不能批量去创建表空间。于时我上网查了一下没有这方面的介绍。后来用了一种方法实现了。下面把这种方法介绍给大家:

1. 创建一张表,把表空间名导入到这张表中。

create table space_name(

name varchar2(20)

)

2.把csv中空的表空间名导入到表中。

“Tools” --> "Text Importer"

出现如下的界面:

点击“红色区域”按钮,导入csv文件,,然后指定owner,表空间,表名,列名,字段类型。最后点击“Import”按钮,执行导入。

3. 执行如下Sql :

select 'create tablespace ' || name || ' DATAFILE ''F:\OracleData\cdcdata\' || name || '01.dbf'' SIZE 10M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;'

from table_space

生成所有的创建表空间命令,然后把查询结果导出到sql 文件中,命名为“cdc_tablespaces_sql.sql”。

4. 执行 @E:\gavi\cdc_tablespaces_sql.sql,批量创建表空间。

下载本文
显示全文
专题