sql獲取ip
方法如下:
首先確認資料庫伺服器功能開啟沒有。
服務裡面找到SQL Server Agent (MSSQLSERVER) ,啟動。
本機IP地址一般都是127.0.0.1,至於名字,一般都是裝資料庫時實例的名字 。
⑵ 如何用sql命令獲取ip地址
在一些需求中,可能我們需要知道連接到SqlServer的前端程序的一些系統信息,比如前端連接的計算機名稱,IP地址,什麼時候開始請求連接,什麼時候結束連接等信息。如果你對SqlServer的系統函數或視圖不太了解,這個功能看起來好像比較復雜,而實際上, SqlServer的動態管理視圖已經給我們提供了這些信息,下面我們來看兩個動態管理視圖。1、Sys.dm_exec_Sessions 這個視圖中提供了所有連接sqlserver的客戶端的一些信息,下面是Sys.dm_exec_Sessions返回的列:列名數據類型 說明Session_idsmallint標識與每個活動主連接關聯的會話。login_timedatetime建立會話的時間。host_namenvarchar(128)與會話關聯的主機。program_namenvarchar(128)與會話關聯的程序。host_process_idint與會話關聯的進程 ID。client_versionint客戶端連接到伺服器所用的介面版本。client_interface_namenvarchar(32)客戶端連接到伺服器所用的介面名稱。security_idvarbinary(85)與登錄名關聯的 Microsoft Windows 安全 ID。login_namenvarchar(128)與會話關聯的 SQL 登錄名。nt_domainnvarchar(128)從中建立會話連接的域。nt_user_namenvarchar(128)與會話關聯的用戶名。statusnvarchar(30)會話的狀態。可能的值: 1,運行 - 當前正在運行一個或多個請求
2,睡眠 - 當前沒有運行任何請求
3,休眠 - 會話處於登錄前狀態
context_infovarbinary(128)會話的 CONTEXT_INFO 值。cpu_timeint該會話所佔用的 CPU 時間(毫秒)。memory_usageint該會話所佔用的 8 KB 內存頁數。total_scheled_timeint計劃內含請求的會話的執行所耗用的總計時間(毫秒)。total_elapsed_timeint自會話建立以來已耗用的時間(毫秒)。endpoint_idint與會話關聯的端點的 ID。last_request_start_timedatetime最近一次會話請求的開始時間。這包括當前正在執行的請求。last_request_end_timedatetime最近一次會話請求的完成時間。readsbigint在該會話期間該會話中的請求所執行的讀取次數。Writesbigint在該會話期間該會話中的請求所執行的寫入次數。logical_readsbigint已對該會話執行的邏輯讀取數。is_user_processbit如果會話是系統會話,則為 0。否則,為 1。text_sizeint會話的 TEXTSIZE 設置。languagenvarchar(128)會話的 LANGUAGE 設置。date_formatnvarchar(3)會話的 DATEFORMAT 設置。date_firstsmallint會話的 DATEFIRST 設置。quoted_identifierbit會話的 QUOTED_IDENTIFIER 設置。arithabortbit會話的 ARITHABORT 設置。ansi_null_dflt_onbit會話的 ANSI_NULL_DFLT_ON 設置。ansi_defaultsbit會話的 ANSI_DEFAULTS 設置。ansi_warningsbit會話的 ANSI_WARNINGS 設置。ansi_paddingbit會話的 ANSI_PADDING 設置。ansi_nullsbit會話的 ANSI_NULLS 設置。concat_null_yields_nullbit會話的 CONCAT_NULL_YIELDS_NULL 設置。transaction_isolation_levelsmallint會話的事務隔離級別。 0 = 未指定 1 = 未提交讀取 2 = 已提交讀取 3 = 可重復 4 = 可序列化 5 = 快照lock_timeoutint會話的 LOCK_TIMEOUT 設置。該值以毫秒計。deadlock_priorityint會話的 DEADLOCK_PRIORITY 設置。row_countbigint到目前為止會話返回的行數。prev_errorint會話返回的最近一個錯誤的 ID。比如說,我們要看那些主機有連接到了sqlserver伺服器,可以使用下面的sql語句:
select distinct host_name from sys.dm_exec_Sessions要看那些用戶已連接到sqlserver伺服器:
select distinct login_name from sys.dm_exec_Sessions當然,利用上面的列,我們可以獲得更多想要的客戶端信息2、Sys.dm_exec_connections 這個視圖返回了連接sqlserver伺服器上面的每個連接的詳細信息,下面是Sys.dm_exec_connections返回的列:列名數據類型 說明Session_idint標識與此連接關聯的會話。most_recent_Session_idint顯示與此連接關聯的最近請求的會話 ID。connect_timedatetime連接建立時的時間戳。net_transportnvarchar(40)說明該連接使用的物理傳輸協議。protocol_typenvarchar(40)指定負載的協議類型。此參數當前可區分 TDS (TSQL) 和 SOAP。protocol_versionint與此連接關聯的數據訪問協議的版本。endpoint_idint與此連接關聯的端點的唯一標識符。此 endpoint_id 可用於查詢 sys.endpoints 視圖。encrypt_optionnvarchar(40)說明是否為此連接啟用了加密的布爾值。auth_schemenvarchar(40)指定與此連接一起使用的 SQL Server/NT 身份驗證。node_affinitysmallint顯示與此連接關聯的 SOS 節點。num_readsint此連接中已發生的讀包次數。num_writesint此連接中已發生的寫數據包次數。last_readdatetime此連接中上一次發生讀操作的時間戳。last_writedatetime此連接中上一次發生寫操作的時間戳。net_packet_sizeint用於信息和數據的網路包的大小。client_net_addressvarchar(40)與此伺服器連接的客戶端的主機地址。client_tcp_portint與該連接關聯的客戶機上的埠號。local_net_addressvarchar(40)顯示此連接的目標伺服器的 IP 地址。只對使用 TCP 傳輸提供程序的連接可用。local_tcp_portint如果此連接使用 TCP 傳輸,則顯示該連接的目標伺服器的 TCP 埠。connection_iniqueidentifier對每個連接進行唯一標識。parent_connection_iniqueidentifier標識MARS 會話正在使用的主要連接。most_recent_sql_handlevarbinary(64)此連接上執行的上一個請求的 SQL 句柄。most_recent_sql_handle 列始終與 most_recent_Session_id 列同步。比如,我要查看當前連接的客戶端IP與sqlserver所在伺服器的IP,可以用下面的sql查詢:
select client_net_address '客戶端IP',local_net_address '伺服器的IP' from sys.dm_exec_connections where Session_id=@@spid@@spid的作用是返回當前進程的會話ID。
⑶ 如何用SQL語句獲取上次登錄IP和時間
如何用SQL語句獲取上次登錄IP和時間
String sql = "SELECT * FROM employee WHERE (((employeeID)="+userID+") AND ((password)='"+password+"'));";
Statement stmt =con.createStatement();
rs = stmt.executeQuery(sql);
if(rs.next()){
// 定義javabean映射欄位保存上次登陸時間
String lastAccessedTime;
// 定義用戶名
String userName;
session.getLastAccessedTime();
userName = rs.getString("fName");
lastAccessedTime = rs.getString("lastAccessedTime");
out.println("<h3>"+ "Welcome " + userName +" "+"!"+ "</h3>");
out.println("You last logged in at: ");
if (lastAccessedTime==null)
{
java.util.Date newTime;
newTime = new java.util.Date(session.getLastAccessedTime());
out.println(new java.util.Date(session.getLastAccessedTime()));
}
else{
out.println(lastAccessedTime);
}
⑷ sql server伺服器ip怎麼查看
c# 遠程連接資料庫SQL
遠程連接有點復雜,首先要保證客戶端與SQL伺服器連接
步驟:
一 看ping 伺服器IP能否ping通。
這個實際上是看和遠程sql server 2000伺服器的物理連接是否存在。如果不行,請檢查網路,查 看配
置,當然得確保遠程sql server 2000伺服器的IP拼寫正確。
二 在Dos或命令行下輸入telnet 伺服器IP 埠,看能否連通。
如telnet 202.114.100.100 1433
通常埠值是1433,因為1433是sql server 2000的對於Tcp/IP的默認偵聽埠。如果有問題,通常這
一步會出問題。通常的提示是「……無法打開連接,連接 失敗"。
如果這一步有問題,應該檢查以下選項。
1 檢查遠程伺服器是否啟動了sql server 2000服務。如果沒有,則啟動。
2 檢查伺服器端有沒啟用Tcp/IP協議,因為遠程連接(通過網際網路)需要靠這個協檢查方法是,在服
務器上打開開始菜單->程序->Microsoft SQL Server->伺服器網路實用工具,看啟用的協議里
是否有tcp/ip協議,如果沒有,則啟用它。
3 檢查伺服器的tcp/ip埠是否配置為1433埠。仍然在伺服器網路實用工具里查看啟用協議裡面的
tcp/ip的屬性,確保默認埠為1433,並且隱藏伺服器復選框 沒有勾上。
事實上,如果默認埠被修改,也是可以的,但是在客戶端做telnet測試時,寫伺服器埠號時必須
與伺服器配置的埠號保持一致。如果隱藏伺服器復選框被勾 選,則意味著客戶端無法通過枚
舉伺服器來看到這台伺服器,起到了保護的作用, 但不影響連接,但是Tcp/ip協議的默認埠將被
⑸ SQL語句查詢IP段
--先構建一個轉換ip地址格式的函數 以『.』為間隔按4段拆分 每段前端補0 然後截取3位
--可將『1.1.166.0』轉換為『001001166000』
create function convertIP (@strIP varchar(20))
returns varchar(20)
as
begin
declare @str1 varchar(6),@str2 varchar(6),@str3 varchar(6),@str4 varchar(6),
@i int,@j int,@k int,@m int
set @i=1
set @j=1
set @k=1
set @m=1
while (@i<=len(@strIP))
begin
if (substring(@strIP,@i,1)='.')
begin
if @k=1 set @str1=substring(@strIP,@m,@j-1)
if @k=2 set @str2=substring(@strIP,@m,@j-1)
if @k=3 set @str3=substring(@strIP,@m,@j-1)
set @j=1
set @m=@i+1
set @k=@k+1
end
else
set @j=@j+1
set @i=@i+1
end
set @str4=substring(@strIP,@m,@j-1)
set @str1='000'+@str1
set @str1=substring(@str1,len(@str1)-2,3)
set @str2='000'+@str2
set @str2=substring(@str2,len(@str2)-2,3)
set @str3='000'+@str3
set @str3=substring(@str3,len(@str3)-2,3)
set @str4='000'+@str4
set @str4=substring(@str4,len(@str4)-2,3)
return @str1+@str2+@str3+@str4
end
--查詢ip地址為標准格式 例如'201.125.12.203'
select address from IP where dbo.convertIP(IPstart)<=dbo.convert('201.125.12.203') and dbo.convertIP(IPend)>=dbo.convertIP('201.125.12.203')
⑹ 怎麼使用SQL查詢IP地址所屬IP段
三個NIC負責全世界所有IP的分配.理論上三個NIC的資料庫涵
蓋了所有的IP.我下面以APNIC為例說明怎麼操作.登錄到APNIC
的主頁上www。apnic。net選擇APNIC WWW Whois Search
在框中填上填入你想查詢的ip地址:61.130.34.5(我隨機選擇的)
APNIC的返會的結果為:
Whois Search results for ' 61.130.34.5'...
inetnum: 61.130.0.0 - 61.130.127.255/IP范圍/
netname: CNINFONET-ZJ /網路名稱/
descr: CNINFONET Zhejiang province network/網路描述1/
descr: Data Communication Division/網路描述2/
descr: China Telecom/網路描述3/
country: CN /國家/
admin-c: CH93-AP/網管/
tech-c:YC30-AP/技術網管/
mnt-by:MAINT-CHINANET /網路標識/
mnt-lower: MAINT-CHINANET-ZJ
changed: [email protected] 20000101/聯系人郵件地址/
source:APNIC/信息來源/
person:Chinanet Hostmaster
address: A12,Xin-Jie-Kou-Wai Street
country: CN
phone: +86-10-62370437
fax-no:+86-10-62053995
e-mail:[email protected]
nic-hdl: CH93-AP
mnt-by:MAINT-CHINANET
changed: [email protected] 20000101
source:APNIC
person:YICHUN WANG
address: NO 378 YAN'AN ROAD,HANGZHOU, ZHEJIANG PROVINCE,310006
country: CN
phone: +86-571-7015441
fax-no:+86-571-7015514
e-mail:[email protected]
nic-hdl: YC30-AP
mnt-by:MAINT-CHINANET-ZJ
changed: [email protected] 20000328
source:APNIC
person:YICHUN WANG
address: NO 378 YAN'AN ROAD,HANGZHOU, ZHEJIANG PROVINCE,310006
country: CN
phone: +86-571-7015441
fax-no:+86-571-7015514
e-mail:[email protected]
nic-hdl: YC30-AP
mnt-by:MAINT-CHINANET-ZJ
changed: [email protected] 20000328
source:APNIC
dgse注:"/"之間的部分是我加的注釋
從返回的信息大概可以推斷出此IP來自中國電信CHINANET浙江163.
當然這樣查到的信息是相當籠統的.
幾個注意的問題:
1)Whois是一種官方提供的信息,目的是為了保證整個Internet運行環境的
協調統一和網路暢通無阻.Whois是針對Internet目錄所提供的信息檢索
服務,是網路重要的目錄服務之一.
2)目前國內流傳一種叫"IP搜索客"的共享軟體是私人編寫的,提供的IP的來
源往往有限(限於國內),且結果有時很不準確,但是有些結果卻精確的
可怕,比如最新的版本甚至可以通過IP准確定位於某個城市,或者某個大
學的某個試驗室(好可怕的說 呵呵).
3)並非所有位於大陸的網路全部向APNIC注冊,比如國內建校園網較早的清華
大學,北京大學等,以北京大學為例(162.105.0.0~~162.105.255.255)在
APNIC上查不到結果,卻可以在ARIN上查到結果.
4)有些國內的用戶使用的ISP是國外(比如ENI)的,那麼查詢的的資料庫就
不能選擇為APNIC,而應該是ARIN.
⑺ SQL獲取獲取時間的函數是getdate(), 請問獲取IP,計算機名的函數是什麼
if
exists
(select
*
from
dbo.sysobjects
where
id
=
object_id(N
'[dbo].[p_getlinkinfo]
')
and
OBJECTPROPERTY(id,
N
'IsProcere
')
=
1)
drop
procere
[dbo].[p_getlinkinfo]
GO
/*--獲取連接SQL伺服器的信息
所有連接本機的:操作的資料庫名,計算機名,用戶名,網卡物理地址,IP地址,程序名
--鄒建
2003.11(引用請保留此信息)--*/
/*--調用示例
--顯示所有本機的連接信息
exec
p_getlinkinfo
--顯示所有本機的連接信息,包含ip地址
exec
p_getlinkinfo
@includeip=1
--顯示連接指定資料庫的信息
exec
p_getlinkinfo
'客戶資料
'
--*/
create
proc
p_getlinkinfo
@dbname
sysname=null,
--要查詢的資料庫名,默認查詢所有資料庫的連接信息
@includeip
bit=0
--是否顯示IP地址,因為查詢IP地址比較費時,所以增加此控制
as
declare
@dbid
int
set
@dbid=db_id(@dbname)
create
table
#tb(id
int
identity(1,1),dbname
sysname,hostname
nchar(128),loginname
nchar(128),net_address
nchar(12),net_ip
nvarchar(15),prog_name
nchar(128))
insert
into
#tb(hostname,dbname,net_address,loginname,prog_name)
select
distinct
hostname,db_name(dbid),net_address,loginame,program_name
from
master..sysprocesses
where
hostname
<>
'
'
and
(@dbid
is
null
or
dbid=@dbid)
if
@includeip=0
goto
lb_show
--如果不顯示IP地址,就直接顯示
declare
@sql
varchar(500),@hostname
nchar(128),@id
int
create
table
#ip(hostname
nchar(128),a
varchar(200))
declare
tb
cursor
local
for
select
distinct
hostname
from
#tb
open
tb
fetch
next
from
tb
into
@hostname
while
@@fetch_status=0
begin
set
@sql=
'ping
'+@hostname+
'
-a
-n
1
-l
1
'
insert
#ip(a)
exec
master..xp_cmdshell
@sql
update
#ip
set
hostname=@hostname
where
hostname
is
null
fetch
next
from
tb
into
@hostname
end
update
#tb
set
net_ip=left(a,patindex(
'%:%
',a)-1)
from
#tb
a
inner
join
(
select
hostname,a=substring(a,patindex(
'Ping
statistics
for
%:%
',a)+20,20)
from
#ip
where
a
like
'Ping
statistics
for
%:%
')
b
on
a.hostname=b.hostname
lb_show:
select
id,資料庫名=dbname,客戶機名=hostname,用戶名=loginname
,網卡物理地址=net_address,IP地址=net_ip,應用程序名稱=prog_name
from
#tb
go
⑻ 使用SQL語句獲得伺服器名稱和IP 地址
使用SQL語句獲得伺服器名稱和IP地址獲取伺服器名稱:SELECT SERVERPROPERTY('MachineName')select @@SERVERNAMEselect HOST_NAME()獲取IP地址
⑼ sql server 已經連上遠程連接伺服器資料庫 ,怎麼查看連接伺服器的IP地址
利用sql語句-獲取伺服器ip的方法
SELECTlocal_net_address伺服器IP地址,local_tcp_portAS服務埠,
client_net_addressAS客戶端IP地址
FROMsys.dm_exec_connections
WHEREsession_id=@@SPID
此腳本適用於SQL2005及以上版本
⑽ 怎麼查看SQL的IP地址還有怎麼修改SQL的IP地址啊
你好,很高興能回答你的問題。
你的問題其實用SQLSERVER都有一個自帶的工具Sqlserverconfigurationmanager.就可以解決。
下面我以sqlserver2008為例介紹操作方法。
1,首先你電腦上安裝了SQLServer2008.然後打開開始菜單-->所有程序-->MicrosoftSQLServer2008-->ConfigurationTools-->SQLServerConfigurationManager
5,如果有不明白可以追問。