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

SQL Procédural MySQL Discussion :

Automatisation de la réplication


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 15
    Par défaut Automatisation de la réplication
    Bonjour,

    Je souhaiterais sécuriser une base de données afin de n'avoir aucun risque de perte en cas de crash d'une machine.
    J'ai donc mis en place un mécanisme de réplication entre 2 serveurs.

    La réplication fonctionne lorsque j'utilise la commande "LOAD DATA FROM MASTER" sur l'esclave : toutes les données du serveur mâitre sont copiées sur le slave.

    Mon problème est que je n'arrive pas à automatiser cette réplication afin que la base de données esclave se synchronise à chaque modification de la base de données maître.
    Quelqu'un aurait-il une idée, SVP ?

    Voici les fichiers de configuration my.cnf de chacune des 2 machines :
    Sur le maître :
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    log-bin=MAMACHINE-MASTER
    server-id=1
    report-host=10.142.42.11

    #If set, allows showing user and password via SHOW SLAVE HOSTS on master.
    show-slave-auth-info

    [mysql.server]
    user=mysql
    basedir=/var/lib

    [safe_mysqld]
    err-log=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
    Sur l'esclave :
    [mysqld]
    datadir=/var/lib/mysql
    server-id=2

    master-host=10.142.42.12
    master-user=replicuser
    master-host=passreplic

    [mysql.server]
    user=mysql
    basedir=/var/lib

    [safe_mysqld]
    err-log=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid

    Je vous remercie d'avance pour votre aide !

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 390
    Par défaut
    quel est le résultat de la commande show slave status sur ton esclave?

    ast tu penser a regarder le fichier err dans data? donne nous ce qui a dedans?

  3. #3
    Invité de passage
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 1
    Par défaut replication mysql
    Bonjour,

    J'éssaye de faire une réplication mysql.

    J’utilise la version mysql 5.0.22-debian_0ubuntu6.

    Sur le maître j’ai fait

    mysql> grant replication slave on *.* to 'replication'@XX.XX.XX.1 identified by 'password';

    Une partie du fichier my.cnf du master :

    [mysqld]
    #
    # * Basic Settings
    #
    user = mysql
    pid-file = /var/run/mysqld/mysqld.pid
    socket = /var/run/mysqld/mysqld.sock
    port = 3306
    basedir = /usr
    datadir = /var/lib/mysql
    tmpdir = /tmp
    language = /usr/share/mysql/english
    skip-external-locking
    #
    server-id = 1
    log-bin = /var/log/mysql/mysql-bin.log
    expire-logs-days = 20
    max_binlog_size = 104857600
    binlog-do-db = radius
    #binlog-ignore-db = include_database_name
    #

    Voici les infos qui s'affichent en tapant show master status\G):

    mysql> show master status\G;
    *************************** 1. row ***************************
    File: mysql-bin.000001
    Position: 98
    Binlog_Do_DB: radius,radius
    Binlog_Ignore_DB:
    1 row in set (0.21 sec)

    ERROR:
    No query specified

    Sur l’esclave j’ai fait

    mysql> change master to master_host = 'XX.XX.XX.2' , master_user = 'replication', master_password = 'password', master_log_file = 'mysql-bin.000001', master_log_pos = 98;

    Une partie du fichier my.cnf de l’esclave:

    [mysqld]
    #
    # * Basic Settings
    #
    user = mysql
    pid-file = /var/run/mysqld/mysqld.pid
    socket = /var/run/mysqld/mysqld.sock
    port = 3306
    basedir = /usr
    datadir = /var/lib/mysql
    tmpdir = /tmp
    language = /usr/share/mysql/english
    skip-external-locking
    #
    server-id = 2
    log-bin = /var/log/mysql/mysql-bin.log
    expire-logs-days = 20
    max_binlog_size = 104857600
    binlog-do-db = radius
    #binlog-ignore-db = include_database_name


    Voici les infos qui s'affichent en tapant show slave status\G :


    mysql> show slave status\G;
    *************************** 1. row ***************************
    Slave_IO_State: Connecting to master
    Master_Host: XX.XX.XX.2
    Master_User: replication
    Master_Port: 3306
    Connect_Retry: 60
    Master_Log_File: mysql-bin.000001
    Read_Master_Log_Pos: 98
    Relay_Log_File: radius1-relay-bin.000004
    Relay_Log_Pos: 98
    Relay_Master_Log_File: mysql-bin.000001
    Slave_IO_Running: No
    Slave_SQL_Running: Yes
    Replicate_Do_DB:
    Replicate_Ignore_DB:
    Replicate_Do_Table:
    Replicate_Ignore_Table:
    Replicate_Wild_Do_Table:
    Replicate_Wild_Ignore_Table:
    Last_Errno: 0
    Last_Error:
    Skip_Counter: 0
    Exec_Master_Log_Pos: 484
    Relay_Log_Space: 98
    Until_Condition: None
    Until_Log_File:
    Until_Log_Pos: 0
    Master_SSL_Allowed: No
    Master_SSL_CA_File:
    Master_SSL_CA_Path:
    Master_SSL_Cert:
    Master_SSL_Cipher:
    Master_SSL_Key:
    Seconds_Behind_Master: NULL
    1 row in set (0.00 sec)

    ERROR:
    No query specified

    ###############

    Je trouve

    Slave_IO_Running: No

    j’ai fait stp slave et start slave mais rien ne change

    Slave_IO_Running: No

    J’ai redémarrer mysql mais rien ne change

    Slave_IO_Running: No


    Mais pourquoi ???????????

    Si quelqu’un à une idée

    Aidez moi svp

    Merci

    Amine

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 63
    Par défaut
    je crois que pour automatise ta replication, tu dois te faire un script avec style mysqldump, qu'apres tu lance une tache planifier dessus !!

    voila si j ai pas raconter trop de betises (j espere) !!

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 390
    Par défaut
    salut

    Slave I/O runing indique le plus souvent que la socket est pas ouverte.
    as tu essayé de te connecter à ton maitre depuis ton esclave manuellement?
    depuis ton esclave : mysql -ureplication -ppassword -hIp_du_master


    Il me faudrait aussi le contenu de ton master.info ainsi que le contenu du fichier de log : généralement nom_du_pc.err.


    je pense qu'il y a également un souci avec le user que tu utilisé pour la réplication
    sur le master :
    grant replication slave on *.* to 'replication'@XX.XX.XX.1 identified by 'password';
    sur l'esclave :
    master-host=10.142.42.12
    master-user=replicuser
    master-host=passreplic
    il faut que ce soit en adéquation.
    Il faut également que le user soit crée


    dekovince =>
    je crois que pour automatise ta replication, tu dois te faire un script avec style mysqldump, qu'apres tu lance une tache planifier dessus !!

    voila si j ai pas raconter trop de betises (j espere) !!
    Désolé de t'apprendre ça mais tu dis des betises

Discussions similaires

  1. Automatisation de réplication
    Par akalaan dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 25/01/2007, 14h13
  2. [MAPI][info] automatisation des taches de messagerie
    Par peppena dans le forum Windows
    Réponses: 6
    Dernier message: 22/01/2004, 16h06
  3. Automatiser la mise à jour de la bD SQL SERVER from Access
    Par Nadaa dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/11/2003, 15h23
  4. Générer règles de conflits pour réplication
    Par dupin40 dans le forum Administration
    Réponses: 3
    Dernier message: 01/09/2003, 15h31
  5. [Concept] Réplication
    Par melinda dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 31/03/2003, 17h29

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