cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010
-
22 juin 2006 à 13:54
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010
-
14 juil. 2006 à 19:42
J’ai récemment posé une question sur le forum VBfrance concernant le remplacement des bases Access par une autre base plus solide et supportant le client/serveur, sans que cela ait un coût pour mes clients.
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /?>
SQLServeur étant trop cher (la version gratuite est limitée a 4Go …) on m’a conseillé MySql.
Cependant, je viens de voir sur un site que MySQL n’était pas adapté à des gros volumes. Je cherche donc les conseilles de personnes qui l’utilisent dans le cadre professionnel, avec des grosses bases (20 a 50 Go …) en client/serveur. MySQL tient t’il le cou ?
Avez-vous des exemples en VB6 ou VB.NET (car on va tous être obligé de migrer …)
De plus j’ai vu qu’il existe des DLL pour l’attaquer directement. J’ai également vu que c’était possible avec ODBC. Quelle est la meilleure méthode ? Sachant que je ne peux pas prendre le risque d’intégrer quelque chose qui ne sera plus maintenu ou développé par un particulier (Merci à MS pour l’abandon du VB6 …)
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 10 juil. 2006 à 16:28
Ok, j'ai essayé de sauvegarder directement le repertoire de ma base de données
ainsi que
ib_logfile0
ib_lofile1
ibdata1
Mais comment fait on pour les restaurer ?
Je n'arrive pas a arreter le serveur MySQL (je travail en local)
J'ai essayé quit, exit, shutdown en ligne de commande. Rien ne fonctionne.
Comment arrête t'on le serveur MySQL ?
D'autres part je suis surpris de voir que la taille de ma base MySQL fait le double de ma base Access.
Exise t'il un moyen de reindexer les bases MySQL pour supprimer les enregistrements temporaires ?
Enfin, j'ai essayé MySQL dump, que j'utilise egalement depuis des années sur mon serveur dédis pour sauvegarder ma base MySQL/PHP. Je viens de me rendre compte que la restauration ne fonctione pas. De plus je ne peux pas arreter mon serveur MySQL sur mon serveur dedié.
C'est tres inquietant, cela signifie que aucune de mes sauvegardes est valide !
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 10 juil. 2006 à 17:51
Masi je n'ai pas de mysqld, le seul fichier qui se rapproche mysqld-nt.exe
J'ai essayé de cliquer sur tous les fichiers du repertoire BIN.
MySQL ne se lance plus, je ne peux même plus me connecter en localhost
Plus rien ne fonctionne depuis que j'ai fait ce shutdown
Vous n’avez pas trouvé la réponse que vous recherchez ?
medelidrissi
Messages postés180Date d'inscriptionjeudi 21 août 2003StatutMembreDernière intervention26 novembre 20072 10 juil. 2006 à 18:03
Ah ok, dans ce cas tu démarres mysql en tant que service windows :
Essaye la commande NET START MySQL, sinon tu dois ouvrir le gestionnaire Windows Service Control Manager et de démarrer mysql.
Bonne programmation.
Cordialement medelidrissi
<hr />En Informatique, rien n'est impossible. mais, ce n'est pas toujours évident.
medelidrissi
Messages postés180Date d'inscriptionjeudi 21 août 2003StatutMembreDernière intervention26 novembre 20072 10 juil. 2006 à 22:43
Vous avez oublié le répertoire Mysql (c'est la structure de base de mysql il contient les utilisateurs les schémas ...., notez qu'il est créé automatiquement lors de l'installation de mysql).
Pour la sauvegarde avec prise en charge du type blob d'après la documentation il faut ajouter --hex-blob à ta syntaxe, cependant la sauvegarde binaire et le meilleur moyen (il n'est pas nécessaire de redémarrer en mode sans echec pour la faire).
http://dev.mysql.com/doc/refman/5.0/en/mysqldump.html
Il ne faut pas désespérer, le nécessaire c'est d'arriver à un bon résultat qui sera bénéfique pour toi et à tes clients ce qu’access n'offre pas à long terme.
Bonne programmation.
Cordialement medelidrissi
<hr />
En Informatique, rien n'est impossible. mais, ce n'est pas toujours évident.
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 11 juil. 2006 à 08:21
Effectivement avec le repertoire MySQL en plus ca fonctionne
Merci beaucoup
Par contre je n'arrive toujours pas a relancer mon serveur manuellement
J'utilise MySQL Server 5.0
j'ai dans le repertoire BIN les fichiers suivants
my_print_defaults.exe
myisam_ftdump.exe
myisamchk.exe
myisamlog.exe
myisampack.exe
mysql.exe
mysqladmin.exe
mysqlbinlog.exe
mysqlcheck.exe
mysqld-nt.exe
mysqldump.exe
mysqlimport.exe
mysqlshow.exe
perror.exe
MySQLInstanceConfig.exe
libmySQL.dll
J'ai essayé de cliquer sur tous, mais impossible de relancer le serveur (je travaille en root). Je suis obligé de redemarrer ma machine
Encore une petite question.
Existe t'il une procedure de réindexation ou de compactage des bases sous MySQL. Je sais que c'etait une opération que je devais faire regulierement sous Access, je ne vois pas d'equivalent sous MySQL.
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 11 juil. 2006 à 11:20
Malheureusement je me suis embalé trop vite
Cette technique ne fonctionne pas sur un autre poste.
Cela detruit MySQL et la seul facon de le refaire marcher et de le desinstaller et de le reinstaller.
Vous etes certains qu'il n'y a pas d'autres fichiers a copier ?
Faut-il créer la base et toutes les tables dedant avant de copier le repertoire.
medelidrissi
Messages postés180Date d'inscriptionjeudi 21 août 2003StatutMembreDernière intervention26 novembre 20072 12 juil. 2006 à 00:00
Je pense que le prob vient de la version Windows que tu utilises, si j'ai bien compris vous utilisez Windows NT, alors lors du test soit vous le faites sur une autre version de Windows ce qui a priori vous cause des probs ou bien vous utilisez la même version NT mais vous négligez peut être les droits d'accès.
En ce qui concerne le démarrage de mysql, je ne sais pas si vous avez essayé la démarche précitée concernant le démarrage d'un service sous Windows, sous windows Xp il ya 2 moyen la premier c'est l'utilisation de la commande dos NET START "Nom du Service", ou bien par l'intermédiaire du gestionnaire de service services.msc. Essaye de voir l'équivalence dans ta version Windows et recherche le service correspondant à mysql.
Prière de me dire sous quel windows vous travaillez.
Bonne programmation.
Cordialement medelidrissi
<hr />En Informatique, rien n'est impossible. mais, ce n'est pas toujours évident.
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 12 juil. 2006 à 07:31
Non, j'utilise du Windows XP
J'ai réussi pour a faire marcher ma sauvegarde
J'utilise un MySQLDump pour l'archivage et MySQL tout court pour restaurer. Et ça fonctionne (même sur des grosses bases).
Il me reste juste le problème de relancer MySQL comme service
Je pense qu'il doit être possible d'appeler MySQL.exe ou MySQLAdmin.exe avec une ligne de commande pour faire ça, mais je n'ai pas encore trouvé.
J'ai également réglé mon problème de conversion de BLOB. J’avais une déconnexion lors de mon transfert car certains dépassaient les 1 mega
J'ai changé la valeur du fichier my.ini
[mysqld]
max_allowed_packet = 1M
en
[mysqld]
max_allowed_packet = 5M
et ça fonctionne.
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /?>
Par contre la aussi, j'aimerais bien trouver une ligne de commande pour dire a MySQL de relire ce fichier de paramétrage sans redémarrer la machine (comme je n'arrive pas à le redémarrer après l'avoir arrêté)
medelidrissi
Messages postés180Date d'inscriptionjeudi 21 août 2003StatutMembreDernière intervention26 novembre 20072 12 juil. 2006 à 10:26
Mysql démarre avec le démarrage de Windows (autrement vous saurez le démarrer), alors,il est possible de voir comment Windows fait pour le lancer:
Demarrer > Executer > msconfig
Clique sur l'anglet démarra et regarde s’il y a un élément nommé mysql ...., si vous le trouvez, regardez dans la colonne commande vous trouverez comment Windows démarre mysql utilisez cette commande pour le démarreur.
Sinon regardez dans l'anglet service (ou bien Demarrer > Executer >services.msc) chercher un service dénommé mysql ...., notez le nom complet de ce service, si c'est le cas vous pouvez utilisez la commande suivante pour démarrer et arrêter mysql NET START "Nom du Service" et NET STOP"Nom du Service" (Attention cette commande ne marche que si mysql et considéré comme un service Windows, ce qui n'est pas mon cas).
Bonne programmation.
Cordialement medelidrissi
<hr />En Informatique, rien n'est impossible. mais, ce n'est pas toujours évident.
medelidrissi
Messages postés180Date d'inscriptionjeudi 21 août 2003StatutMembreDernière intervention26 novembre 20072 12 juil. 2006 à 10:33
Pour my.ini je ne pense pas que ça sera possible de demander à mysql de prendre en charge les modifications apportées à ce fichier sans le redémarrer. Notez normalement vous allez voir qu'il faut spécifier l'emplacement de ce fichier au démarrage de mysql.
Prière de me dire si vous parvenez à démarrer mysql, et de me donner la commande qui permet de sauvegarder et de restaurer mysql en utilisant les commandes.
Bonne programmation.
Cordialement medelidrissi
<hr />En Informatique, rien n'est impossible. mais, ce n'est pas toujours évident.
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 12 juil. 2006 à 16:28
Il me reste un dernier problème
J'essaye d'installer MySQL manuellement, car tout doit être automatique pour mes utilisateurs
Je copie donc tous les fichiers et ça semble fonctionner.
Mais la ou j'ai du mal à comprendre c'est quoi faire apres
Je voudrais créer un service MySQL qui se lance au demarrage de Windows
Avec une instance "MySQL"
définie comme ceci
DSS
3306
Standard Character Set
Service Windows
Un mot de passe administrateur
L’accès root pour les clients
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /?>
J'ai essayé a la ligne suivante. L’instanceMySQL est bien créée mais je n'arrive pas à me connecter après
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 13 juil. 2006 à 08:40
Il y a deux cas
J'essaye
MySQLInstanceConfig.exe -i -q ServerType=SERVER DatabaseType=MIXED ConnectionUsage=DSS Port=3306 ServiceName=MySQL RootPassword=MonPass
Puis
NET START mysql
Et la il me repond que le nom du service n'est pas valide
Deuxieme cas (mais normallement le premier cas devrait suffir) :
mysqld.exe --install MySQL --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini"
Puis
NET START mysql
Ca fonctionne mais
Mais, lorsque j'essaye d'ouvrir ma connexion j'ai le message suivant
Can't connect to mysql server (localhost)
Je n'arrive pas bien a comprendre si il faut utiliser les 2 commandes ou une seule. Elle semble faire la même chose, de plus mysqld.exe n'est plus livré dans la version MySQLEssential
Mais, il reste different probleme.
en effet je constate que le fichier my.ini est vidé apres l'execution de cette ligne
Hors j'ai besoin de modifier ce dernier (pour changer la taille des blobs)
De plus je ne sais pas a quoi sert le fichier my-template.ini
medelidrissi
Messages postés180Date d'inscriptionjeudi 21 août 2003StatutMembreDernière intervention26 novembre 20072 13 juil. 2006 à 09:17
Je pense que dans ce cas le fichier my-template.ini sera utilisé comme fichier d'initialisation par défaut de mysql. Au lieu de my-template.ini essaye d'utiliser directement my.ini dans la création de l'instance, puis modifie-le à ta guise.
Bonne programmation.
Cordialement medelidrissi
<hr />En Informatique, rien n'est impossible. mais, ce n'est pas toujours évident.
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 13 juil. 2006 à 09:45
Effectivement ca a l'air de fonctionner
Si je comprends bien
La bonne methode est de recuperer un my.ini configuré correctement.
de le transformer en my-template.ini
puis sur une nouvelle installation, de le copier dans le repertoire MySQL et d'executer
d:\MySQLInstanceConfig.exe -i -q "-lC:\mysql_install_log.txt" "-tC:\Program Files\MySQL\MySQL Server 5.0\my-template.ini" ServerType=SERVER DatabaseType=MIXED ConnectionUsage=DSS Port=3306 ServiceName=MySQL RootPassword=MonPass
Il y a encore un truc qui me pose probleme.
Est-ce que le my.ini généré automatiquement par MySQLInstanceConfig.exe en mode GUI (lancé sans option en ligne de commande) est toujours le même si on choisit toujours les mêmes options, ou depends t'il de la puissance de la machine sur laquelle il est crée.