表空间

Oracle创建用户、表空间、导入导出、...命令

冷暖自知 提交于 2019-11-27 04:18:42
//创建临时表空间 create temporary tablespace test_temp tempfile 'E:\oracle\product\10.2.0\oradata\testserver\test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; //创建数据表空间 create tablespace test_data logging datafile 'E:\oracle\product\10.2.0\oradata\testserver\test_data01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; //创建用户并指定表空间 create user testserver_user identified by testserver_user default tablespace test_data temporary tablespace test_temp; //给用户授予权限 , 一定要为用户赋dba权限 grant connect,resource to testserver_user; (db2:指定所有权限) 导入导出命令:

oracle 导入dmp文件

寵の児 提交于 2019-11-27 04:18:10
创建监听服务:(便于远程连接服务器上的数据库) oracle Net Configuration Assistant --- > 选择本地NET服务名配置---》添加 -----》服务名(即服务器上的数据库实例名称)--》下一步至 主机名:服务器的IP地址 ----》连接测试--》成功代表配置成功,现在可以远程访问数据库了。 导入oracle的dmp文件: 1、创建实例,与导出的dmp所在的实例相同 2、创建用户,与导出的dmp的用户名及密码权限都相同 3、采用PL/SQL 导入dmp文件 以sys as sysdba身份登录,创建表空间和用户 创建表空间:与要导入的dmp文件的表空间名称一致 create tablespace erp logging datafile 'D:\oracle\product\10.1.0\oradata\erp\erp.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; commit; 创建用户,指定表空间 create user erp identified by aisino2012 default tablespace erp; commit; 注意:要赋予权限dba grant connect,resource,dba to erp ;

查找oracle数据文件、表空间的位置

人盡茶涼 提交于 2019-11-27 04:16:18
转自: http://bdcwl.blog.163.com/blog/static/76522265201053033735155/ 1。执行:select name from v$datafile查询表空间中数据文件具体位置 结果集就一列: NAME F:\ORACLE\ORADATA\ORCL\SYSTEM01.DBF 2。执行:Select * FROM DBA_DATA_FILES;查询表空间中数据文件具体位置和文件名,表空间名等。比上一个全 结果集: FILE_NAME (数据文件名) TABLESPACE_NAME (表空间名) 其他表头............................. F:\ORACLE\ORADATA\ORCL\SYSTEM01.DBF SYSTEM 其他........................... 新建数据库实例的时候可以指定数据文件的位置。默认位置在哪?不同的版本不一样。可以通过新建oracle实例时,去查看一下数据文件的默认位置在哪。 转载于:https://www.cnblogs.com/summer520/p/3678202.html 来源: https://blog.csdn.net/weixin_30782871/article/details/99370390

关于oracle的ORA-00607和ORA-00600错误解决方法

那年仲夏 提交于 2019-11-27 04:16:14
转自: http://lym6520.iteye.com/blog/1693710 前些天数据库服务器出现了一下错误: SQL*Loader-961: 对表 table1 调用一次/加载完成时出错 ORA-00607: Internal error occurred while making a change to a data block ORA-00600: internal error code, arguments: [kddummy_blkchk], [8], [565129], [18021], [], [], [], [] SQL*Loader-2026: 加载因 SQL 加载程序无法继续而被终止 该错误主要是由于数据库非法关闭造成的。 关于ORA-00600错误描述: 引用 ORA-00600: internal error code, arguments: [string], [string], [string], [string], [string], [string], [string], [string], [string], [string], [string], [string] Cause: This is the generic internal error number for Oracle program exceptions. It

创建表空间及用户的SQL

无人久伴 提交于 2019-11-27 04:09:54
--创建表SOFA空间: CREATE SMALLFILE TABLESPACE "SOFA" DATAFILE 'G:\oracle\product\10.2.0\ORADATA\ORCL\SOFA' SIZE 100M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; --创建SOFA用户: CREATE USER "SOFA" PROFILE "DEFAULT" IDENTIFIED BY "SOFA" DEFAULT TABLESPACE "SOFA" ACCOUNT UNLOCK; GRANT COMMENT ANY TABLE TO "SOFA"; GRANT SYSDBA TO "SOFA"; GRANT "CONNECT" TO "SOFA"; GRANT "DBA" TO "SOFA"; GRANT "RESOURCE" TO "SOFA";    PS:以下SQL在表空间不足的情况下使用 --查看SOFA表空间数据文件所在路径 select file_name from dba_data_files where tablespace_name = 'SOFA' --修改SOFA表空间大小,增加数据文件 ALTER TABLESPACE SOFA ADD DATAFILE 'G:

用Docker搭建Oracle数据库

心已入冬 提交于 2019-11-27 02:59:52
1,拉取镜像: docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 2,创建容器 docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 3,启动容器 docker start oracle11g 4,进入镜像配置 docker exec -it oracle11g bash 进行软连接: sqlplus /nolog 如果没有该命令则切换到root用户下: su root; 密码:helowin 编辑环境变量: vi /etc/profile export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 export ORACLE_SID=helowin export PATH=$ORACLE_HOME/bin:$PATH 5、创建软连接 ln -s $ORACLE_HOME/bin/sqlplus /usr/bin 6、切换到oracle 用户 这里还要说一下,一定要写中间的内条 - 必须要,否则软连接无效 su - oracle 7,登陆sqlplus 修改system用户密码 sqlplus

查看ORACLE 数据库及表信息

梦想的初衷 提交于 2019-11-27 02:56:57
-- 查看 ORACLE 数据库中本用户下的所有表 SELECT table_name FROM user_tables; -- 查看 ORACLE 数据库中所有用户下的所有表 select user,table_name from all_tables; -- 查看 ORACLE 数据库中本用户下的所有列 select table_name,column_name from user_tab_columns; -- 查看 ORACLE 数据库中本用户下的所有列 select user,table_name,column_name from all_tab_columns; -- 查看 ORACLE 数据库中的序列号 select * from user_sequences; -- 上面的所有对象,都可以通过下面的 SQL 语句查询得到 -- 查询所有的用户生成的 ORACLE 对象 SELECT * FROM user_objects; -- 查看 ORACLE 数据库中所有表的注释 select table_name,comments from user_tab_comments; -- 查看 ORACLE 数据库中所有列的注释 select table_name,column_name,comments from user_col_comments; -- 给表加

Mysql和Oracle的区别

假如想象 提交于 2019-11-27 02:10:55
一.摘抄于 https://www.cnblogs.com/xu-cceed3w/p/8824199.html   注: 原文在 事务隔离级别的说明上有些问题,Mysql事务的默认隔离级别为可重复读(repeatable read)【可以解决丢失修改,读脏数据,不可重复读这三个并发一致性问题,但不能解决幻影读问题】,Oracle的为读已提交(read commited)【 可以解决丢失修改,读脏数据并发一致性问题,但不能解决 不可重复读 ,幻影读问题 】。   (1) 对事务的提交   MySQL默认是自动提交,而Oracle默认不自动提交,需要用户手动提交,需要在写commit;指令或者点击commit按钮   (2) 分页查询   MySQL是直接在SQL语句中写"select... from ...where...limit x, y",有limit就可以实现分页;而Oracle则是需要用到伪列ROWNUM和嵌套查询   (3) 事务隔离级别   MySQL是repeatable read(可重复读)的隔离级别,而Oracle是 read commited (读已提交)的隔离级别,同时二者都支持serializable串行化事务隔离级别,可以实现最高级别的    读一致性。每个session提交后其他session才能看到提交的更改

oracle常见基础知识

不羁岁月 提交于 2019-11-27 01:24:04
oracle使用的脚本语言称为什么? PL-SQL oracle中游标的分类? oracle中游标分为两类:显示游标和隐式游标 oracle中function与procedure的区别? (1) function一定要有返回值,但procedure不需要返回值 (2) procedure可以返回多个返回值 (3) 在SQL数据操纵语句(DML:select、update、delete、insert)中只能调用function而不能调用procedure oracle导如\出数据有哪几种方式? (1) 通过oracle工具 exp\imp:导入\出的数据是二进制数据 (2) 通过plsql相关工具:导入\出的数据是文本文件 oracle中存在哪几种格式的文件? 数据文件(.dbf、ora)、日志文件(.log)、控制文件(.ctl) oracle中常见的优化的方法? (1) 建合适的索引:减少IO次数 (2) 将索引数据和表数据分开在不同的表空间上:减低IO冲突 (3) 建立表分区,将数据分别存储在不同表分区上:空间换时间思想 (4) 将数据库表按一定的规则进行逻辑分割 (5) 按规则编写SQL语句 (5.1) SQL全部大写或小写 (5.2) 尽量使用占位符?而不直接使用字符 (5.3) 多表查询时,选择数据最少的表放在右边作为基础表,比如存在中间表时 (5.4)

Oracle收缩表空间

爷,独闯天下 提交于 2019-11-27 00:25:42
可以使用 alter database datafile 'file path...' resize xM 的命令来缩小数据文件。 SELECT 'alter database datafile ''' || A.FILE_NAME || ''' resize ' || ROUND(A.FILESIZE - (A.FILESIZE - C.HWMSIZE - 100) * 0.8) || 'M;', A.FILESIZE || 'M' AS "数据文件的总大小", C.HWMSIZE || 'M' AS "数据文件的实用大小" FROM (SELECT FILE_ID, FILE_NAME, ROUND(BYTES / 1024 / 1024) AS FILESIZE FROM DBA_DATA_FILES) A, (SELECT FILE_ID, ROUND(MAX(BLOCK_ID) * 8 / 1024) AS HWMSIZE FROM DBA_EXTENTS GROUP BY FILE_ID) C WHERE A.FILE_ID = C.FILE_ID AND A.FILESIZE - C.HWMSIZE > 100; or SELECT 'alter database ' || A.NAME || ' datafile ''' || B.FILE_NAME || ''''