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

Installation MySQL Discussion :

Installation de Mysql et configuration via un script bash


Sujet :

Installation MySQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 80
    Points : 74
    Points
    74
    Par défaut Installation de Mysql et configuration via un script bash
    Bonjour,

    Voici ma fonction pour l'installation automatique de mysql depuis un script bash, je bloque plus précisément sur les commandes de configuration de Mysql.
    La partie installation s'effectue avec succès.

    Mon script plante à partir de mysql --user="root" --password="$PASSWORD_ROOT_MYSQL"

    J'aimerais connaître les commandes à utilisé sous bash pour arriver à mes fins.

    Merci.

    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    ## Installation et configuration de mysql
    function mysql
    {     
        if [[ "$STATUS" -lt "12" ]] ; then #est plus petit que 12
            ## Installation de mysql
            PKG_OK=$(dpkg-query -W --showformat='${Status}\n' mysql-server-5.5|grep "install ok installed")
            if [[ "" == "$PKG_OK" ]] ; then
                echo -e "  - ${green}Installation de mysql${NC}"
                echo "mysql-server-5.5 mysql-server/root_password password $PASSWORD_ROOT_MYSQL" | debconf-set-selections
                echo "mysql-server-5.5 mysql-server/root_password_again password $PASSWORD_ROOT_MYSQL" | debconf-set-selections
                apt-get -y install mysql-server-5.5 php5-mysql
                echo -e "  - ${green}Changement du mot de passe root de mysql${NC}"
            else
                echo -e "  - ${yellow}Mysql est déjà installé${NC}"
            fi
     
            ## Configuration de mysql
            # On commence par se connecté à mysql
            echo -e "  - ${green}Connection à Mysql${NC}"
            mysql --user="root" --password="$PASSWORD_ROOT_MYSQL"
            # Suppression de la connexion root à distance
            echo -e "  - ${green}Suppression de la connexion root à distance${NC}"
            mysql -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');"
            # Suppression des utilisateur anonyme du localhost
            echo -e "  - ${green}Suppression des utilisateur anonyme du localhost${NC}"
            mysql -e "DROP USER ''@'localhost'"
            # Suppression des utilisateur ananyme de votre nom d'hote
            mysql -e "DROP USER ''@'$(hostname)'"
            echo -e "  - ${green}Suppression des utilisateur ananyme${NC}"
            # Suppression de la base de donnée de test
            mysql -e "DROP DATABASE test"
            echo -e "  - ${green}Suppression de la base de donnée de test${NC}"
            # Jeu de caractères par défaut
            mysql -u root --password=$PASSWORD_ROOT_MYSQL --default-character-set=utf8
            echo -e "  - ${green}Jeu de caractères par défaut: UTF8${NC}"
            # Prise en compte des changements
            mysql -e "FLUSH PRIVILEGES"
     
            echo -e "  - ${green}Configuration du fichier: ${NC}/etc/mysql/my.cnf"
            # Sauvegarde avant modif
            cp /etc/mysql/my.cnf /etc/mysql/my.cnf.bak_"$myDate"
            sed -i -e 's/port.*/port        = '$PORT_MYSQL'/' /etc/mysql/my.cnf
            sed -i -e 's/query_cache_limit.*/query_cache_limit       = 2M/' /etc/mysql/my.cnf
            sed -i -e 's/query_cache_size.*/query_cache_size        = 32M/' /etc/mysql/my.cnf
            sed -i -e 's/#slow_query_log_file.*/slow_query_log_file = \/var\/log\/mysql\/mysql-slow.log/' /etc/mysql/my.cnf
            sed -i -e 's/#slow_query_log      = 1/slow_query_log      = 1/' /etc/mysql/my.cnf
            sed -i -e 's/#long_query_time.*/long_query_time = 2/' /etc/mysql/my.cnf
            sed -i -e 's/\[client\]/\[client\]\ndefault-character-set = utf8mb4/' /etc/mysql/my.cnf
            sed -i -e 's/\[mysql\]/\[mysql\]\ndefault-character-set = utf8mb4/' /etc/mysql/my.cnf  
            sed -i -e 's/\[mysqld\]/\[mysqld\]\ncharacter-set-client-handshake = FALSE\ncharacter-set-server = utf8mb4\ncollation-server = utf8mb4_unicode_ci/' /etc/mysql/my.cnf
     
            # Recharger les nouveaux parametres
            echo -e "  - ${green}Prise en compte de la nouvelle configuration${NC}"
            /etc/init.d/mysql restart        
     
            exit
     
            sed -i -e 's/STATUS=.*/STATUS="12"/g' $basepath/conf/$profile/config
        else
           echo -e "  - ${yellow}L'installation de mysql est effectuée${NC}"
        fi    
    }

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 80
    Points : 74
    Points
    74
    Par défaut
    Eh bien j'ai trouvé mon bonheur...

    Je vous met la source de ma solution:
    https://gist.github.com/Mins/4602864...omment-1294952

Discussions similaires

  1. Connexion à un serveur mysql via un script bash zenity avec expect
    Par xunil2003 dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 24/02/2014, 07h31
  2. Connexion serveur mysql via un script bash
    Par xunil2003 dans le forum Administration
    Réponses: 5
    Dernier message: 05/11/2013, 13h32
  3. Tuer des processus via un script bash
    Par RTK45 dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 18/04/2013, 23h16
  4. Passer une suite de commandes dans sqlplus via un script bash
    Par leon1983 dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 30/01/2013, 15h59
  5. Erreur 1045 impossible de se connecter à mysql via un script
    Par julian-brokendolls dans le forum Installation
    Réponses: 7
    Dernier message: 05/01/2006, 04h23

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