IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Accès aux données Discussion :

accès distant à une base de données local


Sujet :

Accès aux données

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut accès distant à une base de données local
    Bonjour à tous j'aimerais savoir si quelqu'un à une idée pour moi, en faite j'ai crée une application desktop en c# qui permet de gérer un restaurant avec une base de données sql server donc toute les données liées à cette application sont stockées en local(sqlservermanagementstudio) et en faite le propriétaire du restaurant m'a posé le problème qui est de lui permettre l'accès au données de cette application depuis un autre lieu par exemple depuis son domicile ou en voyage à l'aide d'un autre pc bien sur ou sera installer là même application . en gros si on doit faire simple


    PC1 contient une appli AP1 qui se sert de la base de données en local BD1 et on veut servir de BD1 depuis un PC2 contenant AP1 à distance . comment faire ?

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 177
    Points : 25 125
    Points
    25 125
    Par défaut
    sql server est une base réseau donc déjà c'est prévu pour être accédé depuis plusieurs postes
    pour info management studio est juste un outil permettant de visualiser les base de données

    par défaut sql server est paramétré pour ne pas autorisé le tcp/ip, il faut donc commencer par l'activé dans l'utilitaire sql server configuration manager (sur certaines versions il n'est pas dans le menu démarrer)
    une fois le tcp ip autorisé il faut redémarrer sql server

    à partir de là 2 points d'entrée possible, soit tu spécifies le port sql dans ta chaine de connexion (trouvable dans configuration manager, ca doit être port dynamique ou un truc pas loin)
    soit tu vérifies qu'sql server browser est en démarrage automatique (ce service écoute le port UDP 1434 pour permette à un client de connaitre le port tcp dynamique entre autre)

    après n'importe qui peut donc se connecter à sql server en spécifiant l'ip de la machine dans la chaine de connexion
    par contre il faut que le pare feu soit ouvert sur le port tcp dynamique (+ udp 1434 si tu ne veux pas mettre le port dans la chaine de connexion)

    et si le pc2 est en dehors du réseau local (vient d'internet) il faut router le port tcp (et éventuellement udp) vers la machine qui a sql server, ceci se paramètre sur le routeur
    si le routeur change d'ip publique souvent ca va poser problème, une des solutions est d'utiliser un service type dyndns pour avoir un nom de domaine plutot qu'utiliser l'ip
    il y a aussi la possibilité du vpn qui est plus sécurisée que d'ouvrir un port à tout internet (surtout le 1434 qui est connu), ceux voulant accéder à la base devront lancer le vpn avant (et il faut installer un server vpn chez le client)
    une fois le vpn connecté pc2 peut alors se connecter à l'ip locale de pc1 comme s'il était à côté

    tu peux y aller par étape pour tout valider, déjà essaye de te connecter à sql server depuis un autre pc mais sur le réseau local
    puis tu peux tester le routage depuis internet vers la machine


    après le développement multi poste peut amener du développement en plus
    si l'appli n'est pas lancé aux 2 endroits en même temps ou que rien n'est à synchroniser ca ne pose pas de problème
    à l'inverse si l'appli affiche par exemple une liste de réservation sur pc1 et que pc2 ajoute une réservation elle ne sera pas affichée automatiquement sur pc1 à moins de rafraichir les données
    et il faut sécuriser l'application pour pas que 2 pc puissent créer un réservation à la même heure en même temps par exemple (ce qui ne peut pas arriver en monoposte)

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Je te remercie Pol63 je suivrai les étapes que tu as cité dans ta réponse et je te ferai une réponse et je voulai aussi dire que PC2 n'a pas besoin d'etre synchrone avec PC1 , il a juste besoin d'avoir accès à ces données sans pour autant les modifiées . Merci encore

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut connexion à sql server management studio
    Salut Pol63 j'ai executé toute les taches que tu m'avais cité mais je coince . J'ai tester la connexion en local c'est parfait ca marche , mais ou je coince c'est après la création du ddns et du routage du port tcp vers la machine qui possède sqlservermanagementstudio je sais pas quoi écrire dans l'onglet Nom du serveur de la machine 2 pour acceder à la base de donnée de la machine 1 vu que dans ce cas là machine2 ne se trouve pas dans le même lieu et n'est n'y connecté sur le même routeur que la machine 1 elle doit se connecter à la machine 1 grace à internet . Or en local c'etait plutot simple il fallait écrire l'ip de la machine\SQLEXPRESS Ex:192.168.1.6\SQLEXPRESS.

    Merci dans l'attente d'une réponse .

  5. #5
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 177
    Points : 25 125
    Points
    25 125
    Par défaut
    Un modem a 2 ip, une locale en 192.168 comme les pcs sur le réseau et une internet. Pour la connaître tu peux chercher sur Google What si my ip v4 il y a des sites qui te l’affiche car ils voient ton pic dur cette ip car c’est le modem qui se connecte au site.
    Dans l’autre sens c’est pareil, si ton ip est 65.78.123.76 alors en tapant cette adresse depuis un autre pc
    dans le monde on arrive sur ton modem
    Après pour du tcp ip il faut un port, genre 65.78.123.76:1443 en arrivant sur le modem si il ne sait pas quoi faire de ce port alors il refuse la connexion.
    Par contre si tu précises à ton modem que ce port doit être routé vers 192.168.0.3 alors il renverra toute demande de connexion venant d’internet vers ce pc.
    Ça s’appelle du NAT. Au passage ça peut même changer le port donc on peut rentrer sur le port 50000 sur le modem qui renverra vers le port 1433 d’un pc particulier du réseau.
    Donc tu peux ouvrir un port, le router vers le pc ayant sql server. Et donc ça ferait tonipinternet\nominstancesql pour y accéder
    Après il est possible de préciser le port dans la chaîne de connexion

    Là où je parlais de dyndns c’est que certains modems changent d’ip de temps en temps, un nom de domaine dynamique permet donc de router vers l’ip, et de modifier le routage ip quand ci celle change. Et donc ça ferait nomchoisit\sql

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta réponse claire je crois avoir fait toute ces étapes c'est à dire la configuration du NAT et la création d'un dns dynamique car l'ip de mon routeur change à chaque fois le problème et que lorsque je tape co.dns.net\SQLEXPRESS la connexion est refusé . Aussi j'ai essayé de taper co.dns.net:1435\SQLEXPRESS pareil ca ne marche pas. Du coup je suis aller sur pc2 pour voir si je pouvait tester la connexion au port 1435 du pc contenant sqlserver en tapant dans powershell la commande |Test-NetConnection co.dns.net 1435| il affiche un résultat positif qui montre l'accès au port depuis une autre machine sur internet. Du coup je comprend pas d'où viens le problème. Je fini par désespérer.

    NB : co.dns.net -> Nom d'hote du ddns et 1435 -> port ouvert sur la machine et permettant l'accès distant à sqlserver studio entre 2 machine.

  7. #7
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 177
    Points : 25 125
    Points
    25 125
    Par défaut
    Pour sql ce n’est pas ip:port\instance mais un truc du genre ip\instance , port
    Tu peux trouver la bonne syntaxe sur internet

Discussions similaires

  1. Accès distant à une base de données Interbase
    Par aimer_Delphi dans le forum Bases de données
    Réponses: 10
    Dernier message: 25/11/2014, 14h53
  2. [MySQL] accès sur une base de données distante
    Par joboy84 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/10/2008, 23h11
  3. accés vers une base de données distante
    Par sarah_insat dans le forum Autres
    Réponses: 3
    Dernier message: 28/05/2008, 17h19
  4. [Interbase] accée a une base de donnée Distant
    Par touhami dans le forum Bases de données
    Réponses: 6
    Dernier message: 11/06/2006, 11h49
  5. Accés a une base de donnée sous trouvant sur un PC distant
    Par haganidjamel dans le forum Connexion aux bases de données
    Réponses: 2
    Dernier message: 15/03/2006, 09h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo