menu
  Home  ==>  articles  ==>  bdd  ==>  sql_server  ==>  msde_installation   

Installation MSDE - John COLIBRI.


1 - SQL Server et MSDE

Nous allons présenter ici les étapes permettant d'installer la version MSDE de SQL Server.

SQL Server existe en de nombreuses versions, la plus récente étant actuellement SQL Server 2005. Parallèlement à ces moteurs, Microsoft offre un moteur ayant les mêmes fonctionnalités, mais destiné à fonctionner en arrière plan. C'est le MSDE. En gros, c'est Sql Serveur sans les outils graphiques, et avec quelques limitations de taille de fichier, de cache etc. MSDE, qui est distribué gratuitement par Microsoft, permet donc de créer des applications ayant toutes les fonctionalités de Sql Serveur, sans la lourdeur et le coût (licenses, administration... ) de ce dernier.

Ce MSDE existe lui-même en de nombreuses versions, les plus récentes étant destinées à protéger de certains virus (le "slammer worm"), ou encore destinées spécialement au développement ASP.NET (sql2Kdesksp3.msi).

Nous avons utilisé la version MSDE2000A, que nous avons installé et testé jusqu'à Delphi 2006 avec la base d'essai NORTHWIND. Notez que Delphi 2006 est fourni avec une version MSDE qui semble juste antérieure à celle que nous avons utilisée ici, et que l'installateur Delphi propose d'installer MSDE, mais que nous n'avons pas choisi cette option.

Dans cet article, nous allons donc présenter la partie installation / test de MSDE.




2 - Télécharger MSDE et NorthWind

Nous avons téléchargé MSDE à partir de l'adresse suivante chez Microsoft:
  • http://www.microsoft.com/downloads/details.aspx? familyid=413744d1-a0bc-479f-bafa-e4b278eb9147&displaylang=en

  • Comme cette page changera sans doûte tous les quinze jours, essayez de trouver cette page via Google, en recherchant les mots du titre:

        Microsoft SQL Server 2000 Desktop Engine (MSDE 2000) Release A

Le résultat du téléchargement est un fichier de 43 MB:

image



Il nous faut aussi télécharger un exemple de base de données. La plus connue est "NorthWind". Nous avons trouvé cette base chez Microsoft:

  • http://www.microsoft.com/downloads/ details.aspx?familyid=06616212-0356-46A0-8DA2-EEBC53A68034&displaylang=en

  • le titre de la page est

    Northwind and pubs Sample Databases for SQL Server 2000

Le résultat de ce téléchargement est un fichier de 1.522 MB

image




3 - Installation de MSDE

3.1 - Décompactage de MDSE

Nous commençons par décompacter le fichier:
   cliquez deux fois sur msde2000A.exe pour lancer la décompactation
   MSDE présente une license

image

   click "I agree"

   MSDE propose un répertoire pour les fichiers d'installation

image

   nous avons choisi de placer ces fichiers dans C:\program files\, mais cela n'est pas obligatoire.

Choisissez donc le répertoire pour ces fichiers d'installation, puis cliquez "Finish"

   MSDE demande de confirmer la création du répertoire:

image

   cliquez "Oui"

   le décompactage est effectué:

image

puis MSDE annonce la fin de la décompactation:

image

   cliquez "OK"


Voici les fichiers décompactés:

image



3.2 - Création d'un fichier d'installation .BAT

Si nous lançons SETUP.EXE, nous rencontrerons une exception:

    "... needs a strong sa password ..."

En examinant le Readme, il y est indiqué qu'il faut fournir un "mot de passe fort". Et qu'il existe quatre ou cinq autre paramètres qui pourraient avoir leur importance.

Longue fut la recherche de ce qu'est en vérité un mot de passe fort, ou faible. Il semblerait que toute chaîne non vide contenant des lettre, chiffres et ponctuations convienne. "A" serait donc parfait. Y a-t-il une taille minimale, une obligation de ne pas se limiter à des lettres ? J'ignore. En tous cas, en utilisant "me" la connection a fonctionné.

De plus les exemples font souvent allusion au nom d'instance. Ce nom est utilisé ensuite pour se connecter. Nous avons choisi "aname".

Il faut alors lancer depuis CMD.EXE le fichier SETUP.EXE, en ajoutant comme paramètre de ligne de commande le passe port et l'instance. Comme les risques d'erreur de frappe sont grands, nous avons préféré utiliser un fichier .BAT, que nous pouvons modifier à loisir en utilisant Notepad.

Par conséquent
   ouvrez NotePad
   tapez la commande d'installation. Par exemple:

image

où vous pouvez remplacer

  • "me" par "moi" ou "alice", "je", "mypass" ou le plus classique "motdepasseport"
  • "aname" par "mabase", "unebase", "myinstance" etc
mais pensez à bien noter ces deux éléments qui seront utilisés par la suite pour la connexion

   sauvez le fichier dans le répertoire de SETUP.EXE en lui donnant une extension .BAT


3.3 - L'installation

Voici l'installation:
   cliquez sur le fichier .BAT
   SETUP se lance avec les paramètres que vous avez fourni

image

Puis vous revenez à la ligne de commande



Mentionnons aussi qu'au lieu d'utiliser un .BAT pour fournir facilement les paramètres, il est aussi possible de créer un fichier .INI contenant les mêmes paramètres (mais il faut fournir, donc taper, le nom de l'INI dans la ligne de commande, et donc lancer CMD.EXE, naviguer dans le répertoire de SETUP.EXE, et taper le nom de l'.INI ...).



3.4 - Vérification de l'installation

Nous trouvons bien les fichiers installés dans Program Files. Voici, par exemple, le répertoire BINN\TOOLS qui contient, entre autre, le serveur et un outil de commande en ligne OSQL, que nous utiliserons ci-dessous:

image



Nous pouvons ensuite examiner si le logiciel est installé:
   ouvrez "menu démarrer | panneau de configuration | modifier / supprimer des programmes"

   MSDE est bien présent:

image

Notez que MDSE était la première application que nous avions installé sur ce poste.



Puis nous pouvons vérifier que MSDE attend bien nos requêtes, en ayant lancé un Service Windows.
   ouvrez "menu démarrer | panneau de configuration | outils d'administration | services"

   il y a deux services qui ont été installés:

image



Finalement, le menu démarrer contient une entrée pour lancer une instance:
   ouvrez "menu démarrer | programmes | démarrage | service manager"

   une entrée a été ajoutée:

image

Et un icône supplémentaire est située dans la barre de lancement, en bas à droite, ressemblant à un cylindre gris avec des sections (si l'icône n'est pas présente, redémarrez le PC, ce qui est en général recommandé après les installations de logiciels)



3.5 - Lancement des Services

Nous allons lancer les services. Pour cela, nous utilisons le "Service Manager" qui nous pouvons atteindre depuis l'icône en bas à droite ou depuis le menu "démarrer"

Donc:
   ouvrez "menu démarrer | programmes | démarrage | service manager"

   le Service Manager est ouvert:

image

Notez qu'à ce state aucun server par défaut ou service ne sont affichés

   tapez à la main le nom du serveur. Ce nom se compose
  • du nom de votre pc
  • du nom de l'instance que vous avez fourni à SETUP.EXE
Dans notre cas
  • notre PC est nommé POL_1400_5
  • notre instance est ANAME
Nous tapons donc:

image

   si nous attendons un peu, ou si nous cliquons "refresh services", la combo des service se remplit:

image

   nous cliquons "start" pour lancer les services:

   les services sont lancés

image

   nous pouvons fermer ce dialogue, l'icône en bas à droite étant là pour nous rappeler l'état de la connection



4 - Installation de Northwind

Pour vérifier la connection, puis plus tard lire et écrire des données, il vaut mieux disposer d'une base de donnée exemple. Nous installons donc Northwind:
   cliquez SQL2005SampleDb.msi

   une page de bienvenue est présentée

image

   cliquez "Next"

   une license est présentée

image

   cliquez "Agree", puis "Next"

   un dialogue d'options est présenté

image

   cliquez "Next"

   une confirmation vous est demandée:

image

   cliquez "Next"

   l'installation se déroule, puis un dialogue confirme l'installation

image



En fait, l'installateur a choisi de placer les fichiers carrément à la racine:

  c:\SQL Server Sample Database

Voici le contenu de ce répertoire:

image

Notez que

  • l'installateur a aussi installé la base PUBS que nous n'utiliserons pas
  • le fichier instnwnd.sql contient le script qui permettrait de créer la base (en utilisant OSQL.EXE ci-dessous par exemple)
  • SQL Server permet de déplacer ces fichiers où bon nous semble, en indiquant bien sûr au Serveur où nous les avons placés
Pour notre part, nous avons déplacé les fichiers NORTHWIND.MDF et NORTHWIND.LDF en:

    C:\program files\microsoft sql server\_data




5 - Vérifier par des requêtes OSQL

5.1 - Un outil SQL

OSQL est un outil en mode ligne de commande, permettant, entre autre
  • de communiquer avec le Serveur
  • d'attacher / détacher ou créer / effacer une base de données (par exemple Northwind)
  • de lancer des requêtes sur cette base
C'est donc un outil comme en ont tous les moteurs SQL. L'inconvénient est que cet outil est purement en mode ligne de commande (un .EXE DOS), et donc nous nous bornerons à l'utiliser pour vérifier que MSDE fonctionne correctement. Pour le reste, nous utiliserons Delphi en mode graphique.



5.2 - Lancement de OSQL

Pour lancer OSQL, il suffit de taper

  OSQL -E -S serveur\instance

Soit dans notre cas:

  OSQL -E -S pol_1500_5\aname



Les commandes sont tapées sans tenir compte de la mise en page (une ou plusieurs lignes), et c'est la frappe de "go" sur une ligne isolée qui lance l'exécution.

Il n'y a pas de prompt, mais un numéro de ligne de commande courante. Pour saisir la première ligne nous voyons

  1 |

et lorsque nous avons tapé notre texte la ligne suivante est affichée avec 2 etc.



A titre d'exemple, lançons OSQL et affichons les bases de données connues. Il faut taper:

 
OSQL -E -S pol_1500_5\aname
using master
go
select * from systablnames
go



Donc
   lancez CMD.EXE, et naviguez dans le répertoire contenant OSQL.EXE:

image

   lancez OSQL

image

   affichez les bases connues:

image

   (optionnel) quittez OSQL en tapant EXIT ou QUIT


Notez que les "bases de données" affichées sont les bases système qui se trouvent dans

image



5.3 - Attacher NorthWind

Pour le moment, le Serveur ne sait pas où se trouvent les fichiers .MDF et .LDF de Northwind. Nous allons donc "attacher" ces fichiers au serveur:

Il faut indiquer

  • le "nom du serveur" (soit nom du pc+ nom de l'instance)
  • le nom de la base (Northwind)
  • le chemin complet des fichiers .MDF et du fichier de log
Comme nous risquons des erreurs de frappe, nous tapons la commande dans NotePad, et la recopions dans CMD.EXE par "clic droit | coller".

Voilà notre commande d'attachement:

 
exec sp_attach_db @dbname='northwind',
    @filename1= 'C:\Program Files\Microsoft SQL Server\_data\NORTHWND.MDF',
    @filename2= 'C:\Program Files\Microsoft SQL Server\_data\Northwind_log.LDF'



Par conséquent:
   lancez CMD.EXE puis lancez OSQL comme indiqué ci-dessus

   tapez la commande d'attachement:

image

   vérifiez que Northwind a bien été attaché:

image



Finalement, affichons le contenu de Northwind. Pour cela nous pouvons lister les tables de la base (nous trouvons aussi ces noms dans le script instnwnd.sql):

 
use northwind
go
select name from sysobjects where type='U'
go

et nous affichons l'une de ces tables:

 
select * from shippers
go



Donc:
   listez les tables de Northwind

image

   affichez le contenu d'une des tables de Northwind (le script nous a suggéré que Shippers était la plus courte)

image




6 - Le bilan

6.1 - Les passes difficiles

Parmi les quelques difficultés
  • le lancement de SETUP.EXE sans lire le README qui parle du mot de passe. Microsoft devrait fournir un mode par défaut. Oracle avait ScottTiger: Scott, un des premiers employés d'Oracle, et Tiger qui était son chat. Allons, Bill doit bien avoir un quelconque doudou !

  • lorsque le "Service Manager" s'est ouvert, vierge de tout nom, j'étais plutôt embarrassé. Notez que cela se reproduit à chaque chargement. Je me souviens avoir bataillé avec le même type de dialogue pour Oracle, ou il fallait fournir des SID et autres noms d'instance.

  • c'est en essayant de lancer les services que certaines pages sur Internet on commencé à citer les problèmes de MDAC. Microsoft Data Access. L'équivalent du BDE j'imagine. Je connaissais ce nom, rencontré dans des newsgroup Delphi, mais je n'avais jamais eu affaire à ce MDAC.

    Le MDAC 2.71a était recommandé. Alors était-il présent. Une page Microsoft offre un outil de test. Le lancement de cet outil exigeait le chargement et l'installation d'un ActiveX pour vérifier que vous avez une "genuine Windows version". Je veux bien brandir la license avec l'hologramme si on me le demande, mais de là à installer un ActiveX à demeure...

    D'autres pages suggéraient d'inspecter la base de registre. Je n'ai rien trouvé confirmant ou infirmant la présence du MDAC correct. Peut être un lecteur voudra bien éclairer ma lanterne ?

    J'ai donc préféré continuer à chercher quelles données devaient être tapées dans le "Service Manager", et le problème fut résolu ainsi.

    Quoiqu'il en soit, nous pouvons donc affirmer que pour tester la présence du MDAC, il suffit d'installer et faire fonctionner correctement le MSDE !

    Plus sérieusement, le lien suivant:

      http://msdn.microsoft.com/library/ default.asp?url=/library/en-us/dnmdac/html/data_mdacinstall.asp

    fait le point sur les versions MDAC



Parmi les conseils:
  • créez dès le départ un fichier .TXT où vous pourrez stocker les divers paramètres de votre installation:
    • nom de l'instance
    • chemins divers et variés
    • lignes de lancement de CMD.EXE
    • instructions OSQL
    Nous avons placé notre fichier dans les télécharger les .ZIP correspondants
  • une fois le fonctionnement de MSDE acquis, passes à un outil plus confortable que CMD.EXE
  • il semblerait qu'il existe aussi quelques soucis lors de l'installation de plusieurs produits proches du MSDE sur une même machine. Comme nous n'avons pour le moment installé que le MSDE, le problème ne s'est pas posé


L'installation de MSDE est réputée difficile. Ceux qui on lancé cette affirmation ne se sont jamais frotté à l'installation d'Oracle 7.1. Ou alors Microsoft a fait des progrès pour la version que nous avons utilisée ici, ce qui est tout à fait probable. Et surtout il y a maintenant Internet et Google, qui a été utilisé une dizaine de fois pour résoudre un problème ici ou là. En résumé, l'installation n'à voir avec celle d'Interbase, mais cela c'est bien mieux passé que ces rumeurs ne le laissaient supposer. En gros une petite journée, en comptant les copies d'écran.



6.2 - Documentation

Comme MDSE n'est que la version gratuite, légèrement bridée et sans outils graphiques annexes de SQl Server, la documentation proposée par Microsoft est celle de SQL Server.

Via Google, vous trouverez sans difficulté la documentation .HTML.

Microsoft propose aussi des versions téléchargeables sur votre PC. A titre d'info, nous avons récupéré

  • sqlbolsetup_fr.msi: "SQL Books Online (35.4 MB)
  • une version anglaise serait obtenue sur la page
      "SQL Server Books Online January 2004 Update"



7 - Télécharger les fichiers de paramètres

Vous pouvez télécharger:

Ce .ZIP qui comprend:

  • le .DPR, la forme principale, les formes annexes eventuelles
  • les fichiers de paramètres (le schéma et le batch de création)
  • dans chaque .ZIP, toutes les librairies nécessaires à chaque projet (chaque .ZIP est autonaume)
Ces .ZIP, pour les projets en Delphi 6, contiennent des chemins RELATIFS. Par conséquent:
  • créez un répertoire n'importe où sur votre machine
  • placez le .ZIP dans ce répertoire
  • dézippez et les sous-répertoires nécessaires seront créés
  • compilez et exécutez
Ces .ZIP ne modifient pas votre PC (pas de changement de la Base de Registre, de DLL ou autre). Pour supprimer le projet, effacez le répertoire.

La notation utilisée est la notation alsacienne qui consiste à préfixer les identificateurs par la zone de compilation: K_onstant, T_ype, G_lobal, L_ocal, P_arametre, F_unction, C_lasse. Elle est présentée plus en détail dans l'article La Notation Alsacienne



Comme d'habitude:

  • nous vous remercions de nous signaler toute erreur, inexactitude ou problème de téléchargement en envoyant un e-mail à jcolibri@jcolibri.com. Les corrections qui en résulteront pourront aider les prochains lecteurs
  • tous vos commentaires, remarques, questions, critiques, suggestion d'article, ou mentions d'autres sources sur le même sujet seront de même les bienvenus à jcolibri@jcolibri.com.
  • plus simplement, vous pouvez taper (anonymement ou en fournissant votre e-mail pour une réponse) vos commentaires ci-dessus et nous les envoyer en cliquant "envoyer" :
    Nom :
    E-mail :
    Commentaires * :
     

  • et si vous avez apprécié cet article, faites connaître notre site, ajoutez un lien dans vos listes de liens ou citez-nous dans vos blogs ou réponses sur les messageries. C'est très simple: plus nous aurons de visiteurs et de références Google, plus nous écrirons d'articles.



8 - L'auteur

John COLIBRI est passionné par le développement Delphi et les applications de Bases de Données. Il a écrit de nombreux livres et articles, et partage son temps entre le développement de projets (nouveaux projets, maintenance, audit, migration BDE, migration Xe_n, refactoring) pour ses clients, le conseil (composants, architecture, test) et la formation. Son site contient des articles avec code source, ainsi que le programme et le calendrier des stages de formation Delphi, base de données, programmation objet, Services Web, Tcp/Ip et UML qu'il anime personellement tous les mois, à Paris, en province ou sur site client.
Créé: may-06. Maj: aou-15  148 articles, 471 sources .ZIP, 2.021 figures
Contact : John COLIBRI - Tel: 01.42.83.69.36 / 06.87.88.23.91 - email:jcolibri@jcolibri.com
Copyright © J.Colibri   http://www.jcolibri.com - 2001 - 2015
Retour:  Home  Articles  Formations  Développement Delphi  Livres  Pascalissime  Liens  Download
l'Institut Pascal

John COLIBRI

+ Home
  + articles_avec_sources
    + bases_de_donnees
      + programmation_oracle
      + interbase
      + sql_server
        – msde_installation
        – ado_net_bdp
      + firebird
      + mysql
      + xml
      – paradox_via_ado
      – mastapp
      – delphi_business_objects
      – clientdataset_xml
      – data_extractor
      – rave_report_tutorial
      – visual_livebindings
      – migration_bde
    + web_internet_sockets
    + prog_objet_composants
    + office_com_automation
    + colibri_utilities
    + uml_design_patterns
    + graphique
    + delphi
    + outils
    + firemonkey
    + vcl_rtl
    + colibri_helpers
    + colibri_skelettons
  + formations
  + developpement_delphi
  + présentations
  + pascalissime
  + livres
  + entre_nous
  – télécharger

contacts
plan_du_site
– chercher :

RSS feed  
Blog

Formation Bases de Données Delphi Gestion de bases de données : connexion, accès aux tables, édition d'états - 3 jours