Oracele Timesten连接DSN创建用户,oraceletimesten
1. 启动开启
[tt@host2 info]$ ttDaemonAdmin -start -force
/home/tt/TimesTen/tt1122/info/timestend.pid file exists, attempt start due to -force option.
TimesTen Daemon startup OK.
2. 添加测试使用DSN: test_1122
Vi Info/sys.odbc.ini
test_1122=TimesTen 11.2.2 Driver
[test_1122]
Driver=/home/tt/TimesTen/tt1122/lib/libtten.so
DataStore=/home/tt/TimesTen/tt1122/info/DemoDataStore/test_1122
PermSize=40
TempSize=32
PLSQL=1
DatabaseCharacterSet=US7ASCII
3. 连接test_1122
[tt@host2 info]$ ttIsql test_1122
Copyright (c) 1996, 2014, Oracle and/or its affiliates. All rights reserved.
Type ? or "help" for help, type "exit" to quit ttIsql.
4. 创建用户
Command> create user scott identified by tiger;
User created.
Command> grant create table to scott;
Command> grant connect to scott;
Command> grant create view to scott;
Command> grant dba to scott;
15111: Invalid privilege: DBA. Roles are not supported.
The command failed.
5. 给cache group管理权限
Command> grant create session,admin,cache_manager to scott;
15140: GRANT failed: User SCOTT already has system privilege CREATE SESSION
The command failed.
Command> grant admin,cache_manager to scott;
connect "DSN=test_1122";
Connection successful: DSN=test_1122;UID=tt;DataStore=/home/tt/TimesTen/tt1122/info/DemoDataStore/test_1122;DatabaseCharacterSet=US7ASCII;ConnectionCharacterSet=US7ASCII;DRIVER=/home/tt/TimesTen/tt1122/lib/libtten.so;PermSize=40;TempSize=32;TypeMode=0;
(Default setting AutoCommit=1)
连接类型选直接驱动程序,除非你在服务端开启了server功能
同时确定ODBC里配的DSN可以连接
然后通过如下的程序代码进行访问
import java.sql.*;
import javax.sql.*;
public class Tttest{
public static void main(String args[])
{
//远程连接需要的url,程序和TT不在一台服务器。需要按照上节的方法,提前定义好DSN
String URL = "jdbc:timesten:client:dsn=wzyCS_tt70";
//本地连接需要的url,程序和TT在同一台服务器
//String URL = "jdbc:timesten:direct:dsn=wzy_tt70";
Connection con = null;
try {
//加载TT的驱动程序
Class.forName("com.timesten.jdbc.TimesTenDriver");
} catch (ClassNotFoundException ex) {ex.printStackTrace();
}
try
{
//获得连接
con = DriverManager.getConnection(URL);
System.out.println("connected");
//创建jdbc 语句
java.sql.Statement st=con.createStatement();
//执行sql 查询操作
java.sql.ResultSet rs=st.executeQuery("select * from test");
while (rs.next())
{
//取出结果集
System.out.println(rs.getString("id"));
}
//关闭连接
con.close();
// Handle any errors
} catch (SQLException ex) {
ex.printStackTrace();}
}
}
如果TT工作正常,DSN定义正常,我们就能看到java程序输出 结果了。
除了刚开始的url和driver不一样以外,其他的都是标准的jdbc语法,很简单,也很强大。