以前工作的時候由於Oracle8i數據庫經常出現用戶過多的錯誤,由於數據量大,經常出現ORA:12500錯誤,但主要原因是訪問過多而引起的,後來就用Java寫了個簡單的用JDBC連接來測試Oracle最大連接數的程序.現在常用MySQL,所以又寫了一個簡單的測試其最大連接數的程序,在此介紹給大家:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.io.IOException;
class testMaxConn{
public static void main(String args[]){
int count=0;
Connection []conn=new Connection[1000];
Statement []stmt =new Statement[1000];
ResultSet []rs =new ResultSet[1000];
try{
Class.forName
("com.MySQL.jdbc.Driver").newInstance();
for(count=0;count<300;count++){
conn[count] = DriverManager.getConnection
("jdbc:mysql://localhost/MySQL", "root", "");
stmt[count]=conn[count].createStatement();
rs[count]=stmt[count].executeQuery
("SELECT * FROM user");
while (rs[count].next()){
//System.out.println(rs.getString(1)+
"\t "+rs.getString(2));
}
System.out.print(count+"\t");
}
}catch(SQLException ex1){
System.out.println("\n"+ex1.toString());
}catch(InstantiationException ex2){
System.out.println("\n"+ex2.toString());
}catch(ClassNotFoundException ex3){
System.out.println("\n"+ex3.toString());
}catch(IllegalAccessException ex4){
System.out.println("\n"+ex4.toString());
}finally{
try{
System.out.println("\nSystem has opened
"+count--+" MySQL connections.\nPress Enter key
to close the connections");
System.in.read();
System.out.println
("\nClose the Connections:");
for(;count>=0;count--){
rs[count].close();
stmt[count].close();
conn[count].close();
System.out.print(count+"\t");
}
}catch(SQLException ex){
System.out.println
("\n Close connection exception:"+ex.toString());
}catch(IOException io_ex){}
}//end the first "try"
}