MS SQL ping serveur externe
Est-il une "bonne" façon de vérifier si un hôte du réseau est en place
faisant usage de la 'plaine' SQL? J'ai pensé à certains MS-SQL spécifique
de commande ou peut-être certains d'obtenir la valeur de retour à partir d'un script de ping
sur le serveur lui-même.
Quelqu'un a une idée sur ce point?
- La question est: Pourquoi essayez-vous de le faire?
- Mon SQL server stocke les liens vers le contenu qui est fourni mon un serveur FTP externe. Je veux que mon serveur pour vérifier toutes les X minutes si la zone ftp est en place, si ce n'est pas que exécutez une mise à jour et sélectionnez les conent que " temp. pas disponible".
- Ne devrait-ce pas être fait dans la couche d'application, au lieu de la couche de base de données?
- Bon point, en gros le contenu est affiché en java/jsf en fonction de l'application web. Suppose que ce serait une meilleure idée de mettre en place une sorte de RegualarRunning classe au sein de l'app?!
- À long terme, ce sera beaucoup plus souple que d'essayer de pirater ces capacités dans SQL Server.
Vous devez vous connecter pour publier un commentaire.
Il y a deux façons de prendre votre réponse:
1. vous voulez savoir si un serveur SQL server est en cours d'exécution sur un ordinateur hôte arbitraire
2. Vous souhaitez faire un ping d'un arbitraire de l'hôte à partir d'un serveur SQL server à l'aide de certaines requêtes.
vous pouvez utiliser dariom de réponse.
1a. si vous voulez une requête à un serveur SQL server à partir d'un autre, il est préférable d'utiliser le "Serveurs Liés" fonctionnalités de SQL Server.
Vous pouvez utiliser le maître.dbo.xp_cmdshell procédure stockée à exécuter la commande PING, puis renvoie les résultats que les lignes de texte et un code d'état.
EXEC maître.dbo.xp_cmdshell 'ping 192.168.1.1'
Je vais suppose que signifie "plaine" SQL et non pas "palin" 🙂
Si vous êtes en essayant de voir si SQL est exécuté sur un ordinateur hôte, vous pourriez essayer de se connecter à la Service explorateur SQL à l'aide de la PSRS (Protocole de Résolution SQL Server) (mais ce doit être installé et en cours d'exécution sur le serveur).
Vous pourriez essayer une "meilleure estimation" de la démarche et de faire une connexion TCP sur le port 1433 (le port par défaut de SQL Server Base de données du Moteur). Si le port est ouvert, il se peut que l'écoute SQL Server - vous pouvez alors essayer de se connecter à SQL Server et d'exécuter une commande (comme
SELECT @@VERSION
ou quelque chose de spécifique à votre demande). Les problèmes de cette approche:Essentiellement, la meilleure proposition de démarche ne vraiment le travail avec les Serveurs SQL sous votre contrôle.