* Bonjour, *
J'ai une VM sur laquelle j'installe mes differentes versions de MySQL a partir des binaires que je decompresse:
mysql-5.1.48-linux-x86_64-glibc23
mysql-5.5.9-linux2.6-x86_64
mysql-5.5.12-linux2.6-x86_64
mysql-5.5.13-linux2.6-x86_64
Je les installe avec la procedure decrite sur le site MySQL http://dev.mysql.com/doc/refman/5.5/...tallation.html
Et la partie interessante est la commande : scripts/mysql_install_db --user=mysql auquel j'ajoute --datadir=/disk/MySQLData/TemplateDB5-5-13
Ce qui me permet de creer une database Template correspondant a la version installee dans le repertoire indique par --datadir.
Ensuite, pour creer une instance de database toto, je n'ai qu'a creer un repertoire /disk/MySQLData/toto et y copier le contenu de ma base-template (tout ce qui se trouve dans /disk/MySQLData/TemplateDB5-5-13).
Apres, en gros, je modifie le no de port et le nom de socket dans le my.cnf de la nouvelle instance, et apres, je n'ai plus qu'a lancer le mysqld contenu dans bin/ de mon installation en precisant le --basedir, le --datadir, le file my.cnf et le socket.
Jusque la tout se passait bien.
Maintenant, j'aimerais tester la version 5.6.10 qui pourrait avoir quelques ameliorations interessantes.
Je recupere la version 5.6.10 et la decompresse, j'obtiens le repertoire mysql-5.6.10-linux-glibc2.5-x86_64.
Donc, je procede comme d'habitude et comme indique sur la page du site : http://dev.mysql.com/doc/refman/5.6/...tallation.html
Et c'est la que tous mes malheurs arrivent...
Le bon vieux script shell mysql_install_db des versions precedentes a ete remplace par un script perl appele egalement mysql_install_db.
Je mets les memes options qu'avant (--user et --datadir).
J'ai des problemes avec une routine .bin/resolveip $hostname (hostname contient le bon nom de serveur) peut-etre du fait que ce soit une VM, bref je skipe cette etape de verification a l'aide de l'option --force.
Et j'arrive a une partie plus ardue du script ou on lance mysqld avec plein d'options + les miennes et ou on lui passe, via un PIPE perl, les commandes sql contenues dans le fichier ./share/mysql_system_tables.sql.
Les lignes sql lui sont passees par le print PIPE $_ jusqu'a ce que ca plante, sans afficher aucune erreur, ca plante completement le script perl et finalement je n'ai rien cree, a part les 2 repertoires mysql et test qui sont vide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 ..... my $mysqld_bootstrap = $ENV{MYSQLD_BOOTSTRAP} || $mysqld; my $mysqld_install_cmd_line = quote_options($mysqld_bootstrap, $defaults_option, $defaults_extra, $mysqld_opt, "--bootstrap", "--basedir=$basedir", "--datadir=$opt->{ldata}", "--log-warnings=0", "--loose-skip-ndbcluster", "--max_allowed_packet=8M", "--default-storage-engine=MyISAM", "--net_buffer_length=16K", @args, ); # ---------------------------------------------------------------------- # Create the system and help tables by passing them to "mysqld --bootstrap" # ---------------------------------------------------------------------- report_verbose_wait($opt,"Installing MySQL system tables..."); open(SQL, $create_system_tables) or error($opt,"can't open $create_system_tables for reading: $!"); open(SQL2, $fill_system_tables) or error($opt,"can't open $fill_system_tables for reading: $!"); # FIXME > /dev/null ? if ( open(PIPE, "| $mysqld_install_cmd_line") ) { print PIPE "use mysql;\n"; while ( <SQL> ) { # When doing a "cross bootstrap" install, no reference to the current # host should be added to the system tables. So we filter out any # lines which contain the current host name. next if $opt->{'cross-bootstrap'} and /\@current_hostname/; print PIPE $_; } etc etc etc
Le repertoire contenant les binaires contient 2 fichiers core, un gdb dessus n'est guere causant.
Je ne comprends rien a cette nouvelle facon d'installer ...
Si on lance mysqld, je suppose que le my.cnf file doit avoir ete modifie auparavant, ne serait-ce que pour indiquer le port et socket ? J'ai essaye avec tout les infos en commentaire (comme livrees dans support-files) ou telles qu'elles devraient etre (un port et un socket valides) mais il ne se passe rien, j'ai toujours ce core.
Quelqu'un s'est deja sorti d'une install de ce genre et pourrait me dire comment il a fait ? Ou sinon nímporte quelle infos qui pourrait me mettre sur la voie, je suis preneur ....
D'avance merci.
DD
Partager