MYSQL编程:ORACLE 一时表空间TEMP 满了怎样办?
即使对于MySQL的商业化的企业版来说,也没有高昂的许可证成本,当你将其与像甲骨文和微软之类的大型专有商业数据库比较的话。oracle|一时表比来碰到如许一个成绩:前一段工夫网页查询ORACLE表一般,可比来一向页面没法显现。打印出SQL放到PL/SQLDevoloper实行,报“没法经由过程8(在表空间XXX中)扩大temp段”,另有一个页面,能够查询出纪录,但没法统计数据!
经由剖析发生缘故原由多是:ORACLE一时段表空间不敷,由于ORACLE老是只管分派一连空间,一但没有充足的可分派空间大概分派不一连就会呈现上述的征象。
办理办法:晓得因为ORACLE将表空间作为逻辑布局-单位,而表空间的物理布局是数据文件,数据文件在磁盘上物理地创立,表空间的一切工具也存在于磁盘上,为了给表空间增添空间,就必需增添数据文件。先检察一下指定表空间的可用空间,利用视图SYS.DBA_FREE_SPACE,视图中每笔记录代表可用空间的碎片巨细:
SQL>Selectfile_id,block_id,blocks,bytesfromsys.dba_free_spacewheretablespace_name=‘XXX’;
前往的信息可开端断定可用空间的最年夜块,看一下它是不是小于毛病信息中提到的尺寸,再检察一下缺省的表空间参数:
SQL>SELECTINITIAL_EXTENT,NEXT_EXTENT,MIN_EXTENTS,PCT_INCREASEFROMSYS.DBA_TABLESPACESWHERETABLESPACE_NAME=XXX;
经由过程上面的SQL命令修正一时段表空间的缺省存储值:
SQL>ALTERTABLESPACEnameDEFAULTSTORAGE(INITIAL64KNEXT64K);
得当增年夜缺省值的巨细有大概办理呈现的毛病成绩,也能够经由过程修正用户的一时表空间巨细来办理这个成绩:
SQL>ALTERUSERusernameTEMPORARYTABLESPACEnew_tablespace_name;
利用ALTERTABLESPACE命令,一但完成,所增添的空间便可利用,无需加入数据库或使表空间脱机,但要注重,一旦增加了数据文件,就不克不及再删除它,若要删除,就要删除表空间。
不喜好用命令的伴侣,也能够经由过程ORACLE工具DBASTUDIO找到出成绩库的表空间,详细地位在“存储”->“表空间”->”XXX”,右拦“一样平常信息”,能够看到,数据文件利用情形,选择存储,可得当修正,“初使巨细”,和“下一个巨细”,成绩大概会办理,然后选种“XXX”点鼠标右键,选择“增加数据文件”,得当修正“一样平常信息”的“文件巨细”和“存储”的“数据文件已满后主动扩大”的“增量”巨细,成绩也能够办理!
你可以配置MySQL运行在微小的嵌入式应用程序中,处理的数据可能不足1Mb??而你也可以用它来处理数Tb的数据。MySQL获得这种可扩展性的路径之一是通过一个人们所熟知的存储过程,这是一个运行在程序之外的微型、预编译程序。 两个月啃那本sqlserver2005技术内部-存储引擎,花了几个月啃四本书 备份方面可能还是一个老大难的问题。不能单独备份几个表总是感觉不爽。灵活备份的问题不知道什么时候才能解决。 而SQLServer如果能像Oracle一样可以为登陆分配如:5%的cpu,10%的内存。就可以解决这个漏洞。 where子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。 语句级快照和事务级快照终于为SQLServer的并发性能带来了突破。个人感觉语句级快照大家应该应用。事务级快照,如果是高并发系统还要慎用。如果一个用户总是被提示修改不成功要求重试时,会杀人的! 分区表是个亮点!从分区表也能看出微软要做大作强SQLServer的信心。资料很多,这里不详细说。但是重点了解的是:现在的SQLServer2005的表,都是默认为分区表的。因为它要支持滑动窗口的这个特性。这种特性对历史数据和实时数据的处理是很有帮助的。 代替了原来VB式的错误判断。比Oracle高级不少。 代替了原来VB式的错误判断。比Oracle高级不少。
页:
[1]