zoukankan      html  css  js  c++  java
  • IQ 15.X 从IQ_SYSTEM_MAIN DBSPACE 上把数据库对像迁移到用户 DBSPACE 上的办法[转]

    用户在使用IQ 15 数据库一段时间后,执行批量程序时报“You have run out of space in IQ_SYSTEM_MAIN",

    经检查,用户的DBSPACE使用率为1%,IQ_SYSTEM_MAINH 的使用率为100%,

    数据库表对像创建在了IQ_SYSTEM_MAIN上了,没有创建在用户的Dbpace上,造成IQ_SYSTEM_MAIN 空间满。

    解决办法如下:

    1.回收用户在IQ_SYSTEM_MAIN上创建数据库对象(表和索引等)的权限

           REVOKE CREATE ON IQ_SYSTEM_MAIN FROM PUBLIC;


    2.为用户设置缺省dbspace及授予用户在user_dbspace上创建对像

           GRANT CREATE ON XXX_USER_MAIN TO user;                    

           SET OPTION user.DEFAULT_DBSPACE='XXX_USER_MAIN'


    3.把IQ_SYSTEM_MAIN上的表查出来,形成SQL文件

    select  'alter table' +  creator||'.'||tname +' move to XXX_USER_MAIN;' from syscatalog where creator ='username' and dbspacename='IQ_SYSTEM_MAIN' >&/tmp/movetable.sql

        生成脚本文件后,需要用vi把文件里的“’”单引号去掉,正确显示如下:

        alter table table_name  move to XXX _USER_MAIN;


    4.把表移动到用户的DBSPACE上

    dbisql –c “uid=dba;pwd=sql;eng=xxx;links=tcpip” –nogui -onerror continue  movetable.sql






  • 相关阅读:
    offsetwidth/clientwidth的区别
    React-redux-webpack项目总结之用到的Es6基本语法
    【转载】WebService到底是什么?
    W3School WebService教程
    【转载】C++之继承与多态
    抽象类指针
    const函数
    指针和const限定符
    void与void *
    构造函数初始化
  • 原文地址:https://www.cnblogs.com/iathena/p/e3c63c5fca11da5d22dd99cec0a4226c.html
Copyright © 2011-2022 走看看