JTDS连接SQL Server 遇到的问题
今天在用JTDS连接SQL Server 时候,遇到几个问题,记录如下:
error while performing database login with the jtds driver:
network error ioexception:connection refused: connect
然后查看端口,原来是1433端口未打开,然后在SQL Server configuration Manager下的TCP\IP中启用1433端口,重启SQL Server服务,netstat -a -n 查看端口,1433此时已经打开。
再次“test driver”结果又出现问题:
本人想尝试开启SQL Server 的VIA,结果重启SQL Server时,不能正常启动~!
之前通过jdbc连接成功过,现在试一下,结果:
解决办法:
1. 先将VIA禁用,然后打开SQL Server Configuration Manager->MSSQL Server的协议
->TCP/IP->IP地址
2. 查看连个IP地址和端口,经过上述的错误,应该端口设置没有问题的,为1433,但是问
题就出在两个IP地址上,检查时候启用了IP地址,并且只可以启用一个哦,不然就会出现
windows socket error的错误,启用一个之后重启一下SQL Server服务,JTDS和JDBC连
接都正常~!困扰一晚的问题解决~!
相关文档:
首先写一个SQL注入过滤的类:
public class SqlFilter
{
#region SQL注入式攻击代码分析
/// <summary>
/// 处理用户提交的请求
/// </summary>
public void StartProcessRequest()
{
string getkeys = "";
s ......
我觉得主要应该从5个方面进行调整:
1.去掉不必要的大型表的全表扫描
2.缓存小型表的全表扫描
3.检验优化索引的使用
4.检验优化的连接技术
5.尽可能减少执行计划的Cost
现在简单的举几个例子
Where子句中有“!=”将不使用索引
select account_name from test where amount != 0 (不使用)
......
USE [master]
GO
ALTER DATABASE [Database_Name] SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE [Database_Name] SET RECOVERY SIMPLE
GO
USE [Database_Name]
&nb ......
-- Sql Get Last Day of Month...
SELECT (CASE MONTH(GETDATE())
WHEN 1 THEN 31
&nbs ......
--SQL Server:
Select TOP N * from TABLE Order By NewID()
--Access:
Select TOP N * from TABLE Order By Rnd(ID)
Rnd(ID) 其中的ID是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段(U ......