怎么删除数据库文件

怎么删除数据库文件,第1张

问题一:如何删除数据库中所有数据 你租用数据库时,提供商会给你提供数据库连接IP、登陆用户和密码。你在本地sql数据库管理平台(企业管理器)中远程连接你的数据库,然后进入删除所有表或视图、存订过程等资料。光留一个空库,也没啥大碍。

还有个方法就是主动联系客服,申请删除你的数据库。

管理页面上我也没有发现删除数据库的功能。

问题二:怎么删除oracle的数据文件 一、使用offline数据文件的方法

非归档模式使用:alter database datafile '...' offline drop

归档模式使用: alter database datafile '...' offline

说明:

1) 以上命令只是将该数据文件OFFLINE,而不是在数据库中删除数据文件。该数据文件的信息在控制文件种仍存在。查询v$datafile,仍显示该文件。

2) 归档模式下offline和offline drop效果是一样的

3) offline后,存在此datafile上的对象将不能访问

4) noarchivelog模式下,只要online redo日志没有被重写,可以对这个文件recover后进行online *** 作

实际使用案例:

直接删除数据文件后无法进入系统的解决方案

正常情况下,删除表空间的正确方法为:

DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES

如果没有通过以上命令删除而直接删除了数据文件,将导致数据库无法打开。

如果直接删除了数据文件

普通用户登录时,则报错:

ORA-01033: ORACLE initialization or shutdown in progress

sys用户可以正常登录

但进行 *** 作时(SELECT count(1) FROM user_tables),则会报错:

ORA-01219: 数据库未打开: 仅允许在固定表/视图中查询

如果执行命令alter database open以打开数据库时,又报如下错:

ORA-01157: 无法标识/锁定数据文件 12 - 请参阅 DBWR 跟踪文件

ORA-01110: 数据文件 12: 'E:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/TSTEST001.DBF'

说明数据库没找到这个数据文件

因为数据文件在没有被offline的情况下物理删除了,导致oracle的数据不一致,因此启动失败.

通过以下方法即可解决

解决方法:

sqlplus [email protected] as sysdba

SQL>alter database datafile 'E:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/TSTEST001.DBF' offline drop

SQL>alter database open

SQL>drop tablespace CTBASEDATA

二、Oracle 10G R2开始,可以采用:Alter tablespace tablespace_name drop datafile file_name来删除一个空数据文件,并且相应的数据字典信息也会清除:

[email protected] >select file_id,file_name,tablespace_name from dba_data_files

2 where tablespace_name='USERS'

FILE_ID FILE_NAME ......>>

问题三:怎么用SQL语句删除数据库中多个文件 REMOVE FILE 只有在文件为空时才能删除。

正常 *** 作步骤:

以下 *** 作在查询分析器上执行即可:

--转到要处理的数据库:

use 库名

go

--查看该库所有的文件:

select [name],[filename] from sysfiles

go

--对指定的文件进行数据移除:

dbcc shrinkfile (上面查询得到的“逻辑文件名”(定Name那列), EMPTYFILE)

go

--将一定移除了数据的指定文件删除:

ALTER DATABASE 库名 REMOVE FILE 上面查询得到的“逻辑文件名”

Go

问题四:如何删除sql数据库的日志文件 其中database为你的库名 --压缩日志1:截断事务日志:BACKUP LOG 数据库名 WITH NO_LOG2:清空日志DUMP TRANSACTION 库名 WITH NO_LOG再:企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了3: 删除LOG1:分离数据库 企业管理器->服务器->数据库->右键->分离数据库2:删除LOG文件3:附加数据库 企业管理器->服务器->数据库->右键->附加数据库此法生成新的LOG,大小只有500多K再将此数据库设置自动收缩或用代码:下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。EXEC sp_detach_db @dbname = 'pubs'EXEC sp_attach_single_file_db @dbname = 'pubs',@physname = 'c:/Program Files/Microsoft SQL Server/MSSQL/Data/pubs.mdf'4: 如果想以后不让它增长企业管理器--服务器--右键数据库--属性--事务日志--将文件增长限制为xM(x是你允许的最大数据文件大小)--SQL语句的设置方式:alter database 数据库名 modify file(name=逻辑文件名,maxsize=20)5.设置为自动收缩

问题五:oracle中如何删除数据库的实例 想彻底删除的话,建议你还是用DBCA,这样删除的比较彻底,

跟这个实例相关的内容都会被删除的!

开始――程序――Oracle10g――配置和移植工具―DBCA

进入DBCA后,选择删除数据库,就会显示你机器上的

所有实例数据库,选择要删除的就OK

问题六:如何删除outlook数据文件 “开始”---进入“控制面板”,然后找到“邮件”,打开,然后有个“配置文件”,点击“显示配置文件”。把里面有的所有配置文件都删除就行了 一般是只有一个。删除就OK了。这样 outlook2012所有数据都会删除,跟你刚装完是一样的,再打开 就会提醒你重新配置了。

问题七:怎么修改或删除mdb数据库文件里面的东西呀? mdb是access数据库的文件,你可以安装office专业版(2003以上的版本),就可以打开这些文件对其进行修改或删除,但是由于其原先是网站后台数据,可能会有密码否则是无法打开的。

问题八:sql数据库我把表删除了,为什么数据库文件还是那么大?请问怎么才能彻底把数据库文件弄小? create database dbName

on( ...

size=10mb,

...)

是不是建库的时候初始设置大了?

----------

数据库在使用过程中会因需要而不断扩张,你删除表或者大量数据,数据库虽然内容少了,但占用的资源不会少.需要使用数据库收缩命令.

DBCC SHRINKDATABASE(dbName)

或者右键:

企业管理器--目标数据库--所有任务--收缩数据库--收缩文件 --选择数据文件

问题九:如何从表空间中“删除”数据文件 存在两种情况可能需要从表空间中“移走”数据文件。1. 你不小心给一个表空间增加了一个数据文件,或者你把文件大小设得过大,所以想把它删掉。2. 你正在进行恢复,因为丢失了一个数据文件所以不能启动数据库。本文主要处理第一种情况,有别的文章来讲述由于丢失数据文件而不能使用数据库的恢复问题。在我们详细介绍之前,我们必须说清楚一点:Oracle不提供如删除表。视图一样删除数据文件的方法,数据文件是表空间的一部分,所以不能“移走”表空间。在对表空间/数据文件进行任何脱机、删除之前,首先对数据库进行一个全备份。 如果数据文件是所在表空间的唯一的数据文件,你只要简单地删除表空间即可:DROP TABLESPACE INCLUDING CONTENTS你可以运行下面的命令来查询表空间包含多少数据文件。select file_name, tablespace_namefrom dba_data_fileswhere tablespace_name =''DROP TABLESPACE命令从Oracle数据字典删除表空间、数据文件和表空间的内容。Oracle不会再访问该表空间中的任何内容。物理地删除文件需要使用 *** 作系统命令(Oracle从不物理地删除文件注:本文是针对8i或者之前,9i可以使用including datafile选项来删除物理文件>),依赖你的 *** 作系统平台,有的 *** 作系统需要Oracle完全关闭才才可以删除(例如在WINDOWS NT 中需要关闭数据库,停掉相应的服务,在有的情况下Oracle还可能持有文件锁)。如果你的表空间有多个数据文件,而你不需要表空间中的内容,或者你可以很容易重新生产表空间的内容,你可以使用DROP TABLESPACE INCLUDING CONTENTS命令来从Oracle数据字典删除表空间、数据文件和表空间的内容。Oracle不会再访问该表空间中的任何内容。然后重新创建表空间并重新导入数据。如果你的表空间有多个数据文件,而你还需保留该表空间中的其它数据文件中的内容,则你必须首先export出该表空间中的所有内容。为了确定表空间中包含那些内容,运行:select owner,segment_name,segment_typefrom dba_segmentswhere tablespace_name=''export出你想保留的内容。如果export结束,你可以使用DROP TABLESPACE tablespace INCLUDING CONTENTS. , 这样永久删除表空间的内容,使用 *** 作系统命令物理删除数据文件,按所需数据文件重新创建表空间,把数据import至表空间。注意:ALTER DATABASE DATAFILE OFFLINE DROP命令不能允许你删除数据文件,它的目的是脱机该数据文件以删除表空间。如果在归档模式下,使用ALTER DATABASE DATAFILE OFFLINE DROP来代替OFFLINE DROP。一旦数据文件脱机,Oracle不会再访问该数据文件的内容,但它仍然是表空间的一部分。这个数据文件在控制文件中标记OFFLINE,在数据库启动时不会对它与控制文件进行SCN的比较。在控制文件中保留这个数据文件的入口是方便以后的恢复。如果你不想按照上述方法来删除表空间,还有其它一些解决方法。1. 如果你想删除数据文件的原因是因为分配了不合适的文件大小,你可以考虑RESIZE命令。2. 如果你不小心增加......>>

1、drop (删除表):删除内容和定义,释放空间。简单来说就是把整个表去掉.以后要新增数据是不可能的,除非新增一个表。

drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger)索引(index)依赖于该表的存储过程/函数将被保留,但其状态会变为:invalid。

2、truncate (清空表中的数据):删除内容、释放空间但不删除定义(保留表的数据结构)。与drop不同的是,只是清空表数据而已。

注意:truncate 不能删除行数据,要删就要把表清空。

3、delete (删除表中的数据):delete 语句用于删除表中的行。delete语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除 *** 作作为事务记录在日志中保存以便进行进行回滚 *** 作。

truncate与不带where的delete :只删除数据,而不删除表的结构(定义)

4、truncate table 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用delete。如果要删除表定义及其数据,请使用 drop table 语句。

5、对于由foreign key约束引用的表,不能使用truncate table ,而应使用不带where子句的delete语句。由于truncate table 记录在日志中,所以它不能激活触发器。

6、执行速度,一般来说: drop>truncate >delete。

7、delete语句是数据库 *** 作语言(dml),这个 *** 作会放到 rollback segement 中,事务提交之后才生效;如果有相应的 trigger,执行的时候将被触发。

扩展资料

例子:

1、查看数据库

2、切换数据库

3、查看数据库中已创建的表


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6777657.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存