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

MySQL Discussion :

Désinstallation silencieuse de MySQL Server avant réinstallation


Sujet :

MySQL

  1. #1
    Membre habitué Avatar de arnaud.tlse
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 115
    Points : 126
    Points
    126
    Par défaut Désinstallation silencieuse de MySQL Server avant réinstallation
    Bonjour/soir tout le monde

    Voici mon "soucis" :

    J'ai développé une appli Java avec une Bd MySQL.
    Une fois mon tout beau terminé, j'ai commencé à créer un installateur, capable d'installer d'abord MySQL Server de façon transparente pour l'utilisateur (installation silencieuse afin que l'utilisateur n'ai absolument pas à se soucier du mot de passe root, du port, etc...) et qui installe ensuite mon petit prog.

    Je me suis tourné vers NSIS et les scripts NSI.

    Les scripts nsi étant plutôt aisés à prendre en main, et la documentation ne manquant pas, mon installateur installe silencieusement MySQL Server 5.1.33, le configure (mot de passe root, port, etc...) et copie ensuite les fichiers fichiers relatifs à mon programme dans C:\Program Files\MonProg.

    Mon problème vient au niveau de l'installation de MySQL, car j'ai testé mon installateur avec MySQL Server 5.0.67 déjà présente, configurée, et le service en train de tourner sur la machine.

    Le problème est qu'il y a une sorte de conflit entre les deux instances du service qui sont configurées.
    Sachant d'où vient le problème, j'ai stoppé le service, désinstallé MySQL Server 5.0.67, et supprimé le service MySQL du registre.
    Puis relancé mon install et cette fois ça a fonctionné.

    Mais je ne peux pas me permettre de livrer un programme avec un installeur qui nécessite de n'avoir aucune trace d'une autre install de MySQL si vous voyez ce que je veux dire...

    Je voudrais donc pouvoir, à partir de mon installateur à moi, désinstaller toute autre version de MySQL Server déjà présente sur la machine.
    Je sais déjà comment stopper le service avec net stop MySQL, et comment le supprimer du registre automatiquement, mais comment désinstaller MySQL Server de façon silencieuse et supprimer les anciens fichiers de config quand on n'a pas le .exe ou le .msi et que l'on ne connait pas à priori la version ? Y a-t-il moyen de faire cette désinstallation en ligne de commande ?

    Je ne sais pas si mes explications sont très claires, si elles ne le sont pas assez n'hésitez pas à demander !

    Arnaud.

    Avec un escalier prévu pour la montée on réussi souvent à monter plus bas qu'on ne serait descendu avec un escalier prévu pour la descente.

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 016
    Points : 23 705
    Points
    23 705
    Par défaut
    Citation Envoyé par arnaud.tlse Voir le message
    Mais je ne peux pas me permettre de livrer un programme avec un installeur qui nécessite de n'avoir aucune trace d'une autre install de MySQL si vous voyez ce que je veux dire...

    Je voudrais donc pouvoir, à partir de mon installateur à moi, désinstaller toute autre version de MySQL Server déjà présente sur la machine.
    Bonjour,

    Ce n'est pas un peu violent comme solution ? Si des applications tournent sur des bases de données MySQL sur le serveur en question, la désinstallation de tout MySQL sur la machine risque de ne pas forcément beaucoup plaire .

    Pourquoi ne pas tester si un MySQL est déjà présent dans la procédure d'installation (bien que je n'ai pas d'idée à priori sur la manière de procéder ), ou encore installer ta propre version de MySQL sur un port que tu définis toi-même, en nommant le service comme tu l'entends, et en évitant ainsi tout conflit...

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Membre habitué Avatar de arnaud.tlse
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 115
    Points : 126
    Points
    126
    Par défaut
    Merci pour ta réponse !
    Ta réponse m'a fait réflechir, en effet c'est plutôt "bourrin".

    A la base le programme est développé pour une petite agence immobilière, donc le poste sera à la base, vierge de toute installation précédente de MySQL, cependant je voulais prévoir un peu si le logiciel est étendu par la suite.

    En effet, en installant "ma propre version" sur un port que je définis moi même, avec un numéro de port que je définis, ça paraît plutôt sympa, et de plus c'est parfaitement faisable avec l'instruction en script NSI :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ExecWait '"C:\Program Files\MySQL\MySQL Server 5.1\bin\MySQLInstanceConfig.exe" -i -q ServiceName=NomDuService RootPassword=MotDePasse ServerType=DEVELOPMENT DatabaseType=INODB Port=NuméroDuPort RootCurrentPassword=MotDePasse"'
    Moi pour l'instant je fournis comme paramètre "NomDuService" la valeur MySQL et comme "NuméroDuPort" la valeur 3306.

    C'est vrai que je n'avais pas envisagé d'utiliser un autre nom de service ou un autre port

    Y a-t-il un moyen d'une part, une commande ou quelque chose, qui permet de savoir si un nom de service est déjà utilisé (quelque fois que celui que je choisisse ne soit pas assez "original") et d'autre part, un moyen de savoir si un port est déjà utilisé ?

    Avec un escalier prévu pour la montée on réussi souvent à monter plus bas qu'on ne serait descendu avec un escalier prévu pour la descente.

  4. #4
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 016
    Points : 23 705
    Points
    23 705
    Par défaut
    Citation Envoyé par arnaud.tlse Voir le message
    Y a-t-il un moyen d'une part, une commande ou quelque chose, qui permet de savoir si un nom de service est déjà utilisé (quelque fois que celui que je choisisse ne soit pas assez "original") et d'autre part, un moyen de savoir si un port est déjà utilisé ?
    Euh, là, on sort du cadre des compétences sous MySQL...
    C'est une question à poser dans le forum Systèmes correspondant à l'OS sur lequel tu installes ton appli. Parce que la réponse va dépendre de l'OS, à coup sûr .

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  5. #5
    Membre habitué Avatar de arnaud.tlse
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 115
    Points : 126
    Points
    126
    Par défaut
    Ouèppe, c'est pas faux !

    Du coup merci pour tes messages, tu m'a apporté la solution sur un plateau !

    Je clôture le sujet, je m'en vais poser ma superbe question dans le forum sur le système windows. Après des recherches google et sur les sujets existant pas de panique !

    Merci pour tout ced.

    Arnaud.

    Avec un escalier prévu pour la montée on réussi souvent à monter plus bas qu'on ne serait descendu avec un escalier prévu pour la descente.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Cluster MySQL server?
    Par Amekki dans le forum Installation
    Réponses: 3
    Dernier message: 23/01/2007, 16h09
  2. Lost connection to MySQL server during query
    Par Huntress dans le forum Outils
    Réponses: 3
    Dernier message: 20/09/2005, 15h23
  3. PB : Can't connect to local MySQL server through socket
    Par nownow dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 30/05/2005, 09h35
  4. ERROR 2003: Can't connect to MySQL server on 'localhost'...
    Par tonton54 dans le forum Installation
    Réponses: 8
    Dernier message: 25/04/2004, 16h51
  5. [Connexion MySQL] Can't connect to MySQL server
    Par mat_dum dans le forum Outils
    Réponses: 12
    Dernier message: 17/07/2003, 07h49

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