zoukankan      html  css  js  c++  java
  • Timesten 日常管理命令合集

     

    Timesten 日常管理命令合集

    以下所有操作都是基于TT  11 版,早前版本本人没用过,命令是否适用我不清楚啊!

    各类服务管理



    一、TT的启停
      停服务:
      1、停止复制与cache 进程;
      2、停掉server进程 ;
      3、卸载内存(对于RAM为手动管理的)
      4、停掉 Daemon
      
      启服务:
       与停服务操作相反。


      注:操作命令见(二、三)
       
    二、RAM管理
     1、设置内存手动策略
        ttadmin -rampolicy manual tt_1122
     2、加载与卸载内存
        ttadmin -ramloadtt_1122
        ttadmin -ramunload tt_1122


    三、复制进程与cache 进程的启停
      1、复制进程管理
         ttAdmin -repStop tt_1122
         Command> call ttrepstop ;
         Command> call ttrepstart ;
     
      2、cache 进程管理
         Command> call ttCacheStop;
         Command> call ttCacheStart;


      3、Daemon进程管理
         ttDaemonAdmin -stop
         ttDaemonAdmin -start
      
      4、服务的管理(类似于oracle中的监听)
         ttDaemonAdmin  -startserver     
         ttDaemonAdmin   -stopserver 


    性能优化


    一、查看事务信息
    ttxactadmin  tt_1122   (查看一个DSN下的所有事务等待)
    ttxactadmin -xact  1.1640  tt_1122    (查看一个具体的事务)


    二、事务回滚
    ttxactadmin -xactIdRollback <xid> <DSN>
    ttXactAdmin -xactIdRollback 8.223901 tt_1122


    三、根据SQLid 找语句
    可以依据 ttXactAdmin 中的SqlCmdID 找到具体的SQL语句
    Command> cmdcache by cmdid xxx; 


    四、找内存中缓存的SQL语句
       我们可以通过以下命令去查看当前内存中执行过的SQL语句。
        cmdcache [[by {sqlcmdid | querytext | owner}] <query_substring>
        该命令后可以跟三种类型的参数,sqlid ,查询语句,owner


    例子:
    Command> cmdcache exp ;
    < 104919183080, 2048, 0, 1, 0, 1, 5720, TIMESTEN                       , select count(st.id) from 
    ....


    五、执行计划
        The syntax for the explain command is as follows:
        explain [plan for] {[<Connid>.]<ttisqlcmdid> | sqlcmdid <sqlcmdid> | <sqlstmt> 
        | !<historyitem>}


    例:  Command> explain sqlcmdid 104901635296 ;
                 Query Optimizer Plan:
                 .....


    例2: Command> explain select * from dual ;


    六、统计信息收集
      语法: 
      CALL ttOptEstimateStats ( '表或用户', 1, '51 PERCENT' );


      可以在服务器上部署以下小脚本,用以自动手机统计信息:
    [timesten@memdb01 daily_scripts]$ cat collecte_stats.sh
    #!/usr/bin/env bash


    # This script is used for collecting statistic


    . ~/.bash_profile


    ttisql "dsn=tt_order;uid=ord;pwd=ord" << EOF
    set timing on
    call ttOptEstimateStats('',1,'100 PERCENT');
    connect "dsn=tt_order;uid=ord2;pwd=ord2";
    call ttOptEstimateStats('',1,'100 PERCENT');
    EOF
    exit


    注: 第一个参数为空,表示对用户进行收集,否则是收集表的统计信息。


    故障收集与问题诊断


    一、查看cg最近十次刷新状态
    ttisql "dsn=tt_rpt;uid=cacheuser;pwd=xxx;oraclepwd=xxx"
    Command> call ttcacheautorefreshstatsget('user1','testcache');
    < 9878968, 2015-02-05 09:38:57.000000, 335808300, 4423, 0, 0, 0, 0, 0, 6100, 0, 78430307, 7329877383, 78339899, 14916250, InProgress, 0, 78958692, 100, 2015-02-05 09:36:37.000000, 0 >
    < 9878968, 2015-02-05 09:36:57.000000, 335688290, 4422, 72870, 20759, 1939631, 20759, 67850, 4080, 940, 78430307, 7329877383, 78339899, 14916250, Complete, 20785, 78958692, 100, 2015-02-05 09:36:37.000000, 0 >
    < 9878968, 2015-02-05 09:34:57.000000, 335568280, 4421, 78170, 20993, 1972278, 20993, 73350, 3960, 860, 78409548, 7327937752, 78319140, 14843380, Complete, 21273, 78937907, 100, 2015-02-05 09:31:22.000000, 0 >
    .....


    二、查看TT实例的参数配置情况
    ttIsql -connstr "dsn=tt_1122" -e "vertical on; version; select sysdate from dual; call tthostnameget; vertical off; call ttrepstateget; call ttconfiguration; call ttlogholds; monitor; exit;"


    三、当cg 数据积压后需收集以下信息(开SR的时候oracle 工程师可能会要求提供这些信息)
        1、用cache info.sql 输出oracle端有多少实例连接
        拷贝以下路径的 cacheinfo.sql脚本到可登陆sqlplus 路径,并在目标Oracle数据库中执行该脚本。 
        % cd TimesTen_install_dir/oraclescripts 
        % sqlplus cacheuser/oracle@xxx <===根据实际用户密码和服务名登录目标数据库 
        SQL> @cacheInfo 


        2、 ttCapture 输出信息
           e.g. ttCapture 
           ttCapture -dest "/home/timesten" tt_1122


        3、 ttSchema -connstr "dsn=<dsn>" 
           ttschema -list all tt_mdjk >> schema_1122.txt


        4、  ttIsql -connstr "dsn=<dns>" -e "vertical on; version; select sysdate from dual; call tthostnameget; vertical off; call ttrepstateget; call           ttconfiguration; call ttlogholds; monitor; exit;"


        5、 All ttmesg, tterror, ttcwmesg and ttcwerror logs ( default location is TimesTen info directory ) 


        6、All <db>.inval, <db>.assert or <db>.trace files ( find in database directory )


    四、其它关键信息的收集


    建议收集以下信息,方便故障时问题的诊断。
    1、call ttbackupstatus ; (建议每30分钟收集一次)
      示例脚本:
      [timesten@memdb02 ~]$ cat /sdb2/scripts/ttbackupstatus.sh
              #!/usr/bin/env bash
              . ~/.bash_profile
              ttisql tt_mat  << EOF
              spool /sdb2/scripts/ttbackupstatus_info_mat.txt  append
              select sysdate from dual ;
              call ttbackupstatus ;
              EOF
              exit;


    2、call ttbookmark ; (建议每30分钟收集一次)
      示例脚本:
    [timesten@memdb02 ~]$ cat /sdb2/scripts/ttbookmark_mat.sh
    #!/usr/bin/env bash
    . ~/.bash_profile
    ttisql tt_mat  << EOF
    spool /sdb2/scripts/ttbookmark_info_mat.txt  append
    select sysdate from dual ;
    call ttbookmark ;
    EOF
    exit;


    3、call ttckpthistory ; (建议每30分钟收集一次)
      示例脚本:
    [timesten@memdb02 ~]$ cat /sdb2/scripts/ttckpthistory_mat.sh
    #!/usr/bin/env bash
    . ~/.bash_profile
    ttisql tt_mat  << EOF
    spool /sdb2/scripts/ttckpthistory_info_mat.txt  append
    select sysdate from dual ;
    call ttckpthistory ;
    EOF
    exit;


    4、call ttlogholds ; (建议每30分钟收集一次)
      示例脚本:
    [timesten@memdb02 ~]$ cat /sdb2/scripts/ttlogholds_mat.sh
    #!/usr/bin/env bash
    . ~/.bash_profile
    ttisql tt_mat  << EOF
    spool /sdb2/scripts/ttlogholds_info_mat.txt  append
    select sysdate from dual ;
    call ttlogholds ;
    EOF
    exit;


    5、 sys.monitor 表的信息(建议每分钟收集一次)
      示例脚本:
    #!/usr/bin/env bash
    . ~/.bash_profile
    ttisql "dsn=tt_mat" << EOF
    spool /data/sys_monitor_date/t_monitor_mat.txt append
    select sysdate , a.* from sys.monitor a  ;
    exit


    备份与还原


    1、表机构的备份
       ttschema -list all tt_1122   >> backup_db.txt


    2、数据的导出导入
    ---数据快速备份和恢复
    导出数据: ttBulkCp -o mystore mytbl mytbl.dump
    导入数据: ttBulkCp -i -e mytbl.err mystore mytbl mytbl.dump


    3、实例的备份与还原
    增备:
    ttbackup -dir /home/timesten/ttbackup -type fileIncrorFull tt_1122
    ttbackup -dir /home/timesten/ttbackup -type incrementablStop tt_1122


    普通备份:
    ttBackup -dir /sdb2/backup_dir/tt_1122_backup   -connstr "DSN=tt_1122"


    4、恢复
    $ ttRestore -dir /home/timesten/ttbackup -connstr "DSN=tt_1122"
    Restore started ...
    Restore complete
    恢复之后建议cachegroup 全部删掉重建。
    如果直接恢复报错的话,可以  ttDestroy tt_1122  一下
  • 相关阅读:
    maven
    面试宝典之Java程序运行原理
    并发队列总结
    HashMap探究
    Linux安装python应用之前需要安装的库
    Linux中为Python应用安装uwsgi
    常用SQL语句
    Windows CE无法连接Win 10
    无法加载 DLL xpstar.dll 或它引用的一个 DLL。原因: 126(找不到指定的模块。)。
    SQL Server 数据恢复
  • 原文地址:https://www.cnblogs.com/jing1617/p/7483093.html
Copyright © 2011-2022 走看看