当前位置: 首页 > 工具软件 > TimesTen > 使用案例 >

php 连接timesten,timesten常见的一些简单问题

向杜吟
2023-12-01

环境为:

instance_name为eservice

安装目录为/home/timesten/TimesTen

下面这些问题是针对新手而言的,通过这些问题可以帮助刚接触timesten的人可以快速配置timesten。[

@more @]

如何启动

/home/timesten/TimesTen/eservice/startup/tt_eservice [start|stop|restart]

如何访问

[timesten@rh44server ~]$ ttisql

Copyright (c) 1996-2007, Oracle. All rights reserved.

Type ? or "help" for help, type "exit" to quit ttIsql.

All commands must end with a semicolon character.

Command> connect tt_eservice;

Connection successful: DSN=TT_eservice;UID=eservice;DataStore=/home/timesten/TimesTen/eservice/info/TT_eservice;DatabaseCharacterSet=ZHS16GBK;ConnectionCharacterSet=ZHS16GBK;DRIVER=/home/timesten/TimesTen/eservice/lib/libtten.so;TypeMode=0;

(Default setting AutoCommit=1)

Command>

应用程序如何连接

答:有三种模式:

Direct Driver连接:Timesten推荐连接方式,由于没有了协议转换的开销,这种连接方式具有最高的效率。对于JDBC应用程序,可以通过JDBC库访问ODBC的direct driver。这种连接方式要求应用程序和Timesten数据库处于同一台服务器上。对于共享模式,数据库被加载到共享内存中,多个应用程序可以共享访问内存中的数据。可以减少TCP/IP,IPC方面的开销。

客户端/服务器连接:当应用程序与Timesten不在同一个服务器上,则应用程序将命令发给客户端驱动,而客户端和服务器端一般通过TCP/IP协议通信,服务器端得到应用程序提交给客户端的请求并执行。

Driver Manager连接:应用程序通过ODBC驱动管理器连接到Timesten,而这个驱动管理器一般是第三方提供的独立于数据库的驱动接口。

如何查看TT中的存储过程和表格

答:可以参见sql.pdf文档。如sys.tables,sys.indexes

如何查看TT的日志

答:在/home/timesten/TimesTen/eservice/info/ttmesg.log

和/home/timesten/TimesTen/eservice/info/tterrors.log中

如何批量执行角本

答:ttIsql -f create.sql MY_DSN(DSN的名字)

如何查看TT的错误号对应的信息

答:查看error_ref.pdf文档

如何设定字符集

答:在/home/timesten/TimesTen/eservice/info/sys.odbc.ini中

例如:

[TT_eservice]

Driver=/home/timesten/TimesTen/eservice/lib/libtten.so

DataStore=/home/timesten/TimesTen/eservice/info/TT_eservice

DatabaseCharacterSet=ZHS16GBK

ConnectionCharacterSet=ZHS16GBK

UID=eservice

PWD=alibaba

如何查看索引和表格:

Command> desc tracelog;

Table TIMESTEN.TRACELOG:

Columns:

*ID NUMBER (20) NOT NULL

CORPORATION_ID NUMBER (10) NOT NULL

USER_ADDRESS VARCHAR2 (15) INLINE NOT NULL

USER_ID VARCHAR2 (32) INLINE NOT NULL

GMT_USER_LOGIN DATE NOT NULL

GMT_USER_LAST_VISIT DATE NOT NULL

CORPORATION_PAGE VARCHAR2 (255) NOT INLINE NOT NULL

1 table found.

(primary key columns are indicated with *)

Command> indexes tracelog;

Indexes on table TIMESTEN.TRACELOG:

TRACELOG: unique T-tree index on columns:

ID

USERID_CORPID_LASTVISIT_IDX: non-unique T-tree index on columns:

USER_ID

CORPORATION_ID

GMT_USER_LAST_VISIT

2 indexes found.

Client/Server DSN配置

答:

1.在windows下面,在控制面版中配置DSN。这里需要注意的是在服务端的DSN属性中需要设置Authenticate=0(没有采用access control),

否则需要输入密码。并且uid是需要输入timesten的,否则的话,UID将变成客户端主机的用户名了。

2.在unix下面,需要配置sys.ttconnect.ini和sys.odbc.ini这两个文件,

在sys.ttconnect.ini中

[remote_eservice] //指向服务器端的逻辑名

Description=TimesTen Server

Network_Address=10.0.33.108 //此处的地址有如下三种写法,不同的写法导致数据的通讯模式不同,性能也不一样

//ip地址-tcp;

//ttShmHost-shared memory;

//ttLocalHost-UNIX domain sockets

TCP_PORT=17002 // 可在服务器上通过ttstatus 得到

在sys.odbc.ini文件中

[ODBC Data Sources]

eservice=TimesTen Client 7.0

[eservice]

TTC_SERVER=remote_eservice //指向第一步中配置的服务器逻辑名

TTC_SERVER_DSN=eservice //要连接到B机上哪个DataStore

注意客户端还需要配置:

export LD_LIBRARY_PATH=/home/timesten/TimesTen/tt70/lib:/usr/lib

export CLASSPATH=/home/timesten/TimesTen/tt70/lib/ttjdbc14.jar

如何实时查看TT的状态:

答:

ttStatus命令

错误处理:

802: Data store space exhausted

6221: Temporary data partition free space insufficient to allocate 64664 bytes of memory

答:在32bit上面,timesten总共可用的内存为2047M,包括tempsize和permsize。

需要增加tempsize参数,这里需要注意的是,如果一开始permsize设为2000m,后来又想调小它,

只能是把原来的Datastore删掉才行,否则是降不下来的。可以设置overwrite=1来覆盖它。

不过注意,这样不只是数据没了,而且连表的定义也没了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26736162/viewspace-2135438/,如需转载,请注明出处,否则将追究法律责任。

 类似资料: