一、创建临时表空间:
create temporary tablespace yd_temp
tempfile 'D:\oracledata\file_temp.dbf' --路径根据实际情况填写
size 50m
autoextend on
next 50m maxsize 2048m
extent management local;
二、创建数据表空间
create tablespace file_data
logging
datafile 'D:\oracledata\file_data.dbf' --路径根据实际情况填写
size 50m
autoextend on
next 50m maxsize 2048m
extent management local;
现实实例详解:
CREATE TABLESPACE YNCCIP --表空间名
DATAFILE '/home/u02/oradata/orcl/YNCCIP01.dbf' --表空间对应的数据文件
SIZE 100M --数据文件大小
AUTOEXTEND ON NEXT 10M --数据文件不够用自动扩展,每次扩展大小
MAXSIZE 1000M --数据文件最大文件大小
LOGGING --启动重做日志
PERMANENT --指定表空间为永久性的表空间
EXTENT MANAGEMENT LOCAL AUTOALLOCATE --指定新建表空间为本地管理方式的表空间
BLOCKSIZE 16K --块大小
SEGMENT SPACE MANAGEMENT auto --指定本地管理表空间中段的存储管理方式,AUTO自动方式,MANUAL手工方式。;
(补充:如果想将oracle表空间数据文件的大小设置为不限制,可以配置MAXSIZE UNLIMITED)
(补充:删除表空间数据和表空间文件:drop tablespace表空间名称 including contents and datafiles cascade constraint;)
(参考地址:CREATE TABLESPACE命令详解(转))
三、创建用户并指定表空间
create user username identified by 12345678 -- ‘username’ 为创建的用户名 ;‘12345678’为创建的新用户登录密码
default tablespace file_data -- 指定数据表空间
temporary tablespace file_temp; -- 指定临时表空间
四、给用户授权
grant connect, -- 连接权限
resource, -- 资源权限
dba -- 数据库管理员权限
to file_username;
五、使用imp导入工具导入dmp文件
imp 用户名/密码@数据库实例名 -- 创建实例
file=C:\data\filename.dmp -- 配置待导入的dmp文件
log=C:\data\logname.log -- 配置要导入时生成的日志文件地址(可不配置)
[fromuser=source用户名 -- 配置dmp导出的数据库的用户名(仅在根据用户名导入数据时配置)
touser=target用户名 -- 配置dmp要导入的数据库的用户名(仅在根据用户名导入数据时配置)
|full=y] -- 配置导入文件中的全部内容,有可能有多个用户的内容
ignore=y; -- 配置导入的时候,如果没有表,创建表并导入数据,如果已经存在的表,忽略创建表,但不忽略导入。
(注意:full=y 和 fromuser、touser 只能二选一)
六、 增加表空间大小
通常完成1-5步骤以后,就可以使用DW_TEST用户登录使用了,此时表空间只分配了一个文件。
为了减少运维麻烦,通常在初始创建时创建多个表空间文件,这样可以维持使用很久。
因此,我通常每次都是增加10-20个文件来使用,注意每个文件后面的序号连续。
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS02.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS03.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS04.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS05.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS06.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS07.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS08.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS09.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
ALTER TABLESPACE DW_TEST_TBS ADD DATAFILE '/opt/oracle/oradata/biee/DW_TEST_TBS010.dbf' SIZE 7167M AUTOEXTEND ON NEXT 3072M MAXSIZE 32767M;
7. 查询结果
SELECT tablespace_name,
file_id,
file_name,
round(bytes / (1024 * 1024), 0) total_space
FROM dba_data_files
where tablespace_name = 'DW_TEST_TBS'
ORDER BY tablespace_name;
结果如下: