当前位置: 首页 > wzjs >正文

南昌专业做网站seo优化标题

南昌专业做网站,seo优化标题,农产品网络营销模式,网站关键词怎样修改Oracle 的 MOVE 操作是否重建表? Oracle 的 ALTER TABLE ... MOVE 操作实质上是重建表的物理存储结构,但保留表的逻辑定义不变。 MOVE 操作的本质 物理重建: 创建新的数据段(物理存储结构)将原表数据按顺序重新插入到…

Oracle 的 MOVE 操作是否重建表?

Oracle 的 ALTER TABLE ... MOVE 操作实质上是重建表的物理存储结构,但保留表的逻辑定义不变。

MOVE 操作的本质

  1. 物理重建

    • 创建新的数据段(物理存储结构)
    • 将原表数据按顺序重新插入到新段中
    • 删除原数据段
    • 更新数据字典指向新段
  2. 逻辑不变

    • 表名、列定义、约束等逻辑结构保持不变
    • 表的对象ID(OBJECT_ID)会发生变化
    • 依赖对象(如视图、同义词)不受影响

重建的具体表现

  1. 数据重组
    -- 执行前数据块状态
    SELECT extent_id, block_id, blocks 
    FROM dba_extents 
    WHERE segment_name = 'YOUR_TABLE';-- 执行MOVE
    ALTER TABLE your_table MOVE;-- 执行后数据块状态(完全改变)
    

输出示例:

SQL> SELECT extent_id, block_id, blocks FROM dba_extents WHERE segment_name = 'T1' and OWNER='TEST';EXTENT_ID   BLOCK_ID     BLOCKS
---------- ---------- ----------0       2496          81       4696          82       4704          83       4712          84       4720          85       4728          86       6016          87       6024          88       6032          89       6040          810       6048          811       6056          812       6064          813       6072          814       6080          815       6088          816       6272        12817       6400        12818       6528        12819       6656        12820       6784        12821       6912        12822       7040        12823       7168        12824       7296        12825       7424        12826       7552        12827 rows selected.SQL> ALTER TABLE t1 MOVE;Table altered.SQL> SELECT extent_id, block_id, blocks FROM dba_extents WHERE segment_name = 'T1' and OWNER='TEST';EXTENT_ID   BLOCK_ID     BLOCKS
---------- ---------- ----------0      10080          81      10088          82      10096          83      10104          84      10240          85      10248          86      10256          87      10264          88      10272          89      10280          810      10288          811      10296          812      10304          813      10312          814      10320          815      10328          816      10368        12817      10496        12818      10624        12819      10752        12820      10880        12821      11008        12822      11136        12823      14336        12824      14464        12825      14592        12826      14720        12827 rows selected.
  1. DATA_OBJECT_ID变化
    -- 执行前
    

select object_id,data_object_id,object_name,to_char(created,‘yyyy-mm-dd hh24:mi:ss’) created from dba_objects where object_name = ‘T1’ and owner=‘TEST’ ;

– 执行后(新DATA_OBJECT_ID)


输出示例:```sql
SQL> select object_id,data_object_id ,object_name,to_char(created,'yyyy-mm-dd hh24:mi:ss') created from dba_objects where object_name = 'T1' and owner='TEST' ;OBJECT_ID DATA_OBJECT_ID OBJECT_NAME     CREATED
---------- -------------- --------------- -------------------75061          75870 T1              2025-02-04 23:15:05SQL> ALTER TABLE t1 MOVE;Table altered.SQL> select object_id,data_object_id ,object_name,to_char(created,'yyyy-mm-dd hh24:mi:ss') created from dba_objects where object_name = 'T1' and owner='TEST' ;OBJECT_ID DATA_OBJECT_ID OBJECT_NAME     CREATED
---------- -------------- --------------- -------------------75061          75871 T1              2025-02-04 23:15:05
  1. ROWID变化
    • 所有行的ROWID都会改变
    • 基于ROWID的应用程序需要调整

与真正"重建表"的区别

特性MOVE操作完全重建表(CREATE AS SELECT)
表定义保留所有属性需要手动重建约束、触发器等
对象依赖关系自动保持需要手动重建
权限保留原有权限需要重新授权
执行速度较快较慢
高水位线重置完全重置完全重置
索引状态需要重建需要重建

需要特别注意的影响

  1. 索引处理

    -- MOVE后必须重建索引
    ALTER INDEX your_index REBUILD;
  2. 依赖对象

    • 物化视图日志会被清除
    • 基于ROWID的物化视图需要刷新
    • 某些类型的约束可能需要重新验证
  3. 在线操作限制

    -- 12C开始支持有限制的在线MOVE
    ALTER TABLE your_table MOVE ONLINE;
    -- 但仍有部分锁限制,可能阻塞DML
    

何时应该使用MOVE

  1. 典型场景

    • 表碎片化严重(超过30%空闲空间)
    • 需要迁移到其他表空间
    • 需要改变存储参数(如压缩)
    • 高水位线远高于实际数据位置
  2. 替代方案比较

    • 对于小型表:CREATE TABLE new_table AS SELECT * FROM old_table
    • 对于最小化停机:DBMS_REDEFINITION在线重定义
    • 对于部分优化:SHRINK SPACE(不改变ROWID)

MOVE操作是Oracle提供的一种高效的"表重建"机制,它在保持逻辑结构不变的前提下,完全重建表的物理存储结构,是维护Oracle数据库性能的重要工具。

http://www.dtcms.com/wzjs/73610.html

相关文章:

  • 昆山做百度网站app开发需要哪些技术
  • 成都网站建设怎么样12345浏览器
  • 网站挂马处理百度快照制作链接的app的软件
  • 石家庄学做网站建设培训志鸿优化网
  • 西安培训网站建设自助建站系统模板
  • 西安网站制作开发公司新闻投稿平台有哪些
  • 旅游网站哪个做的好百度竞价怎么收费
  • 如何做一名合格的网站巡查推广计划方案模板
  • 做网站的技术关键免费关键词排名优化
  • 网站开发项目团队人员南昌seo优化
  • 设计素材网站都是有哪几个百度资讯
  • 招商网站大全免费站长之家最新网站
  • 邢台哪儿做wap网站好上海有哪些优化网站推广公司
  • 建站abc服务百度合作平台
  • wordpress个人下载网站模板下载全渠道营销案例
  • 广州大型网站建设公司社区推广
  • 网站如何做伪静态北京seo薪资
  • html5 素材网站店铺推广方法
  • 怎么去接网站来做百度竞价推广自己可以做吗
  • 网站开发必备人员百度集团总部在哪里
  • magento 做的最牛逼的中文网站无锡网站制作
  • 义乌网站建设多少钱推广方案的推广内容怎么写
  • 网站 建设 网站设计公司想卖产品怎么推广宣传
  • 电脑在哪里制作网站百度投诉中心
  • 2免费做网站网络优化
  • 品牌授权seo外包服务方案
  • 用群晖如何做公司网站营销推广文案
  • 给赌场做网站百度极速版免费下载安装
  • 怎么用dedecms搭建网站济南百度竞价开户
  • 个人怎么自己建网站优化关键词的方法有哪些