MSDE FunClub
Microsoft Data Engine FunClub
MSDE技術者向けメーリングリスト過去ログ[905]番
 
[TOP]>[MSDE技術者向けメーリングリスト過去ログ(905番)]>[ウィンドを閉じる]
 
SQLServer2005時代でも
開発の基本は T-SQL
上巻で T-SQL の基礎作り
 
SQLServer2005時代でも
運用の基本はバックアップ
下巻でバックアップ手法を学びましょう
PASSJ人気コンテンツで学んだ後は下巻でさらなる学習を!
 
ウィンドを閉じる
MSDE/SQLServer FAQ
MSDE / MSDE2000 
技術情報サポート
初心者向け
メーリングリスト
過去ログの表示
技術者向け
メーリングリスト
過去ログの表示
メーリングリスト
活動状況の
表示
MSDE TOP メニュー
MSDEトップメニューに移動します
 

 
Re: SQL Server 2000 への接続について

Date: Thu, 27 Dec 2001 12:04:10 +0900
From: "Akira Horikawa" <who@example.ne.jp>


堀川です

-----Original Message-----
From: Kiyoshi Miyazaki [mailto:who@example.co.jp] 
Sent: Thursday, December 27, 2001 9:33 AM
To: who@example.ne.jp
Subject: [ml-msde:00902] Re: SQL Server 2000 への接続について


>ポート1433は正しいのですがだめでした

これはtelnetで、クライアントから1433番に接続できたという意味ですか?


>結局、WindowsXPクライアントのOSをWindows2000に変更しました
>とりあえず結果をご報告させていただきます

時間がなければしょうがないですが、厳しい言い方かもしれませんが、
原因をはっきり調べられた方がよかったと思います。



【参考】

ソケットはご存知ですか?
一般的なネットワークプログラミングでは、ソケットを使います


#!/usr/bin/perl
# *************
#      Server
# *************

# Use Socket Package
    use Socket;

# Use Other Package
    use FileHandle;

# Set Port Number
    $port = @ARGV[0];
    $port = 44965 unless $port;     #default Port

# Make Socket
    $proto = getprotobyname('tcp');
    socket( S , PF_INET , SOCK_STREAM , $proto)
        or die "socket:$!";

# Bind
    bind( S , sockaddr_in($port,INADDR_ANY))
        or die "bind:$!";

# Listen
    listen( S , SOMAXCONN );

# Accept
    accept( C , S ); 

# Do
    while( <C> ) {
        print   $_;
        print C $_;
        autoflush C 1;
    }

# Program End
    close( C );
    close( S );
    exit; 


上記のPerlスクリプトは、Linuxで以前に作ったものですが、そのまま
WindowsのActivePerlでも動きます(今動かしてみました)。
ネットワーク間のソケット通信が正常かどうか調べることができます

サーバー側の方で上記スクリプトを動かして(待ち受けポート1433など)、
クライアント側からtelnetでコネクトして、何か文字列を入力して、その
文字列が表示できれば、TCP/IPレイアは正常であることが判明します。

もしコネクトできなければ、クライアント側からの接続用パケットが
出ていない、どこかにフィルタリングされている可能性がある、
などの判断ができます。

TCP/IPレイヤが正常であれば、次に、クライアントは
               telnet  host_name  port
で、接続できるかどうか調べます。
接続できなければ、DNS関係がおかしいので、hostsファイルやDNSサーバー
関係を調べます。

このようにすれば、データベースレイアの直前までの動作チェックができます。

                  telnet  host_name  port

によって接続ができれば、あとはデータベースレイアの問題となります。

サーバー側とクライアント側に組み込まれているライブラリのバージョンは
正しいかどうか?

このように調査を進めれば、原因の特定ができたはずです。

#VBにもソケットコントロールがあります
#簡単なサーバー側プログラムも作れますが、原因調査なら Perl が良いので
は?

---------------------------------------------------
(株)日本技術ソフト開発  堀川 明
        mailto:who@example.ne.jp
        http://www.horikawa.ne.jp/msde/
12月27日(木曜日) 12時01分記



[MSDE/SQLServerに関して、今、どんなことにお困りですか?]
よろしければお困りの内容を、電子メールで教えて下さい。
質問を電子メールで作成する


[ウィンドを閉じる]

[MSDE/SQLServer FAQ ]

[MSDE / MSDE2000 技術サポート情報一覧]

MSDE TOP ページに移動する

 
 
 
 
 
 
 
MSDE FunClubに関するご意見・ご要望等ございましたら、
msdefun@horikawa.ne.jp までご連絡下さい。
MSDEを始めとする各種データベースシステムの開発、コンサルタントに関するご要望等は、
msdedev@horikawa.ne.jp までご連絡下さい。