查看oracle表空间内存
SELECT a.tablespace_name "表空间名", total "表空间大小", free "表空间剩余大小", (total - free) "表空间使用大小", total / (1024 * 1024 * 1024) "表空间大小(G)", free / (1024 * 1024 * 1024) "表空间剩余大小(G)", (total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)", round((total - free) / total, 4) * 100 "使用率 %" FROM (SELECT tablespace_name, SUM(bytes) free FROM dba_free_space GROUP BY tablespace_name) a, (SELECT tablespace_name, SUM(bytes) total FROM dba_data_files GROUP BY tablespace_name) b WHERE a.tablespace_name = b.tablespace_name and a.tablespace_name='USER_DATA'
本地oracle创建表空间:
说明:datafile是指定创建位置,指向oracle数据库的默认位置;
autoextend 设置容量为自动增长,50M是自增的大小
位置:E:oracle_appAdministratoradminsmsdbsms_tablespsce
create tablespace ank_tablespace datafile 'E:/oracle_app/Administrator/admin/smsdb/ANK_TABLESPACE' size 1M autoextend on next 64M maxsize unlimited; create tablespace ZCDATA datafile '/home/oracle/app/oracle/oradata/orcl/ZCDATA01.dbf' size 1M autoextend on next 64M maxsize unlimited;
查看及修改默认表空间
-- 查看默认表空间 select default_tablespace from user_users; -- 修改用户的永久表空间 alter user userName default tablespace tablespaceName; -- 修改新添加的用户的默认表空间 alter database default tablespace tablespaceName; -- 查看指定表所在的表空间,如果为DBA,可用 dba_tables select table_name,tablespace_name from user_tables where tablename='你想要查询的表名'; -- 用户对表空间无权限ora-01950解决办法 grant unlimited tablespace to zsdb; -- 查看表空间路径 select t1.name,t2.name from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#; -- 查看字符集 select * from nls_session_parameters --数据库服务器字符集 其来源于props$ select * from nls_database_parameters --客户端字符集环境 其来源于v$parameter select userenv('language') from dual; alter system set nls_language='AMERICAN' scope=spfile; alter session set nls_language='SIMPLIFIED CHINESE'; --查看数据库版本 select * from v$version
参考资料:oracle字符集
参考:从ORACLE数据库中导出DMP文件或将DMP文件导入ORACLE数据库的两种操作
将DMP文件导入到ORACLE数据库时,使用imp命令。 1、首先,我们可以先建立自己的一个用户表空间,创建表空间的格式如下: create tablespace test(表空间的名字) datafile 'D:oracleproduct10.2.0userdata est.dbf' (这边可以写成oracle的某个路径下) size 50m (初始大小) autoextend on;(自动扩展) 2、接下来,我们可以创建一个自己的用户,创建格式如下: CREATE USER utest (用户名) IDENTIFIED BY upassword(密码) DEFAULT TABLESPACE test(上面创建的表空间) TEMPORARY TABLESPACE temp;(临时表空间就写temp即可) 3、然后,我们需要给自己的用户赋予权限来管理自己的表空间 GRANT CONNECT TO utest; GRANT RESOURCE TO utest; GRANT dba TO utest;--dba为最高级权限,可以创建数据库,表等。 以上三条语句的执行环境都需要进入oralce之后 cmd下进入oracle的方式 sqlplus system/密码 回车即可 4、接下来我们就可以将我们的dmp文件导入到我们自己的表空间中了,导入方式 imp usename/password@SID full=y file= d:dataxxxx.dmp ignore=y 导入实例 imp utest/upassword file=D:20140227.dmp full=y ignore=y (将文件导入到我们自己新建的用户的表空间中) 注意:这条语句的执行环境是刚进命令台时的环境。