Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment installer MySQL sur Debian 7

MySQL est un système de gestion de base de données populaire utilisé pour les applications Web et serveur. Ce guide vous présentera comment installer, configurer et gérer MySQL sur un Linode exécutant Debian 7 (Wheezy).

Les grandes bases de données MySQL peuvent nécessiter une quantité considérable de mémoire. Pour cette raison, nous vous recommandons d'utiliser un High Memory Linode pour de telles configurations.

Remarque Ce guide est écrit pour un utilisateur non root. Les commandes qui nécessitent des privilèges élevés sont préfixées par sudo . Si vous n'êtes pas familier avec le sudo commande, vous pouvez consulter notreGuide des utilisateurs et des groupes.

Avant de commencer

  1. Assurez-vous d'avoir suivi les guides de démarrage et de sécurisation de votre serveur, et que le nom d'hôte de Linode est défini.

    Pour vérifier votre nom d'hôte, exécutez :

    hostname
    hostname -f
    

    La première commande doit afficher votre nom d'hôte court et la seconde doit afficher votre nom de domaine complet (FQDN).

  2. Mettez à jour votre système :

    sudo apt-get update
    sudo apt-get upgrade
    

Installer MySQL

sudo apt-get install mysql-server

Au cours du processus d'installation, vous serez invité à définir un mot de passe pour l'utilisateur racine MySQL, comme indiqué ci-dessous. Choisissez un mot de passe fort et conservez-le dans un endroit sûr pour référence future.

MySQL se liera à localhost (127.0.0.1) par défaut. Veuillez consulter notre guide d'accès à distance MySQL pour plus d'informations sur la connexion à vos bases de données avec des clients locaux.

Remarque Autoriser un accès illimité à MySQL sur une adresse IP publique n'est pas conseillé, mais vous pouvez changer l'adresse sur laquelle il écoute en modifiant le bind-address paramètre dans /etc/my.cnf . Si vous décidez de lier MySQL à votre adresse IP publique, vous devez implémenter des règles de pare-feu qui autorisent uniquement les connexions à partir d'adresses IP spécifiques.

Renforcer le serveur MySQL

Exécutez le mysql_secure_installation script pour résoudre plusieurs problèmes de sécurité dans une installation MySQL par défaut.

sudo mysql_secure_installation

Vous aurez le choix de modifier le mot de passe root MySQL, de supprimer les comptes d'utilisateurs anonymes, de désactiver les connexions root en dehors de localhost et de supprimer les bases de données de test. Il est recommandé de répondre oui à ces options. Vous pouvez en savoir plus sur le script dans le manuel de référence MySQL.

Utiliser MySQL

L'outil standard pour interagir avec MySQL est le mysql client qui s'installe avec le mysql-server emballer. Le client MySQL est utilisé via un terminal.

Connexion racine

  1. Pour vous connecter à MySQL en tant qu'utilisateur root :

    mysql -u root -p
    
  2. Lorsque vous y êtes invité, entrez le mot de passe root. Vous serez alors présenté avec un en-tête de bienvenue et l'invite MySQL comme indiqué ci-dessous :

    mysql>
    
  3. Pour générer une liste de commandes pour l'invite MySQL, entrez \h . Vous verrez alors :

    List of all MySQL commands:
    Note that all text commands must be first on line and end with ';'
    ?         (\?) Synonym for `help'.
    clear     (\c) Clear command.
    connect   (\r) Reconnect to the server. Optional arguments are db and host.
    delimiter (\d) Set statement delimiter. NOTE: Takes the rest of the line as new delimiter.
    edit      (\e) Edit command with $EDITOR.
    ego       (\G) Send command to mysql server, display result vertically.
    exit      (\q) Exit mysql. Same as quit.
    go        (\g) Send command to mysql server.
    help      (\h) Display this help.
    nopager   (\n) Disable pager, print to stdout.
    notee     (\t) Don't write into outfile.
    pager     (\P) Set PAGER [to_pager]. Print the query results via PAGER.
    print     (\p) Print current command.
    prompt    (\R) Change your mysql prompt.
    quit      (\q) Quit mysql.
    rehash    (\#) Rebuild completion hash.
    source    (\.) Execute an SQL script file. Takes a file name as an argument.
    status    (\s) Get status information from the server.
    system    (\!) Execute a system shell command.
    tee       (\T) Set outfile [to_outfile]. Append everything into given outfile.
    use       (\u) Use another database. Takes database name as argument.
    charset   (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
    warnings  (\W) Show warnings after every statement.
    nowarning (\w) Don't show warnings after every statement.
    
    For server side help, type 'help contents'
    
    mysql>
    

Créer un nouvel utilisateur et une nouvelle base de données MySQL

  1. Dans l'exemple ci-dessous, testdb est le nom de la base de données, testuser est l'utilisateur, et password est le mot de passe de l'utilisateur.

     create database testdb;
     create user 'testuser'@'localhost' identified by 'password';
     grant all on testdb.* to 'testuser' identified by 'password';
    
  2. Puis quittez MySQL.

    exit
    

Créer un exemple de tableau

  1. Reconnectez-vous en tant que testuser .

    mysql -u testuser -p
    
  2. Créez un exemple de table appelée customers . Cela crée une table avec un champ ID client de type INT pour entier (auto-incrémenté pour les nouveaux enregistrements, utilisé comme clé primaire), ainsi que deux champs pour stocker le nom du client.

    use testdb;
    create table customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
    
  3. Puis quittez MySQL.

    exit
    

Réinitialiser le mot de passe racine MySQL

Si vous oubliez votre mot de passe root MySQL, il peut être réinitialisé.

  1. Arrêtez l'instance actuelle du serveur MySQL.

     sudo /etc/init.d/mysql stop
    
  2. Utilisez dpkg pour relancer le processus de configuration suivi par MySQL lors de la première installation. Il vous sera à nouveau demandé de définir un mot de passe root.

     sudo dpkg-reconfigure mysql-server-5.5
    

dpkg redémarrera MySQL automatiquement et vous pourrez vous connecter en utilisant mysql -u root -p .

Régler MySQL

MySQL Tuner est un script Perl qui se connecte à une instance en cours d'exécution de MySQL et fournit des recommandations de configuration basées sur la charge de travail. Idéalement, l'instance MySQL devrait avoir fonctionné pendant au moins 24 heures avant d'exécuter le tuner. Plus l'instance a fonctionné longtemps, meilleurs seront les conseils donnés par MySQL Tuner.

  1. Installez MySQL Tuner à partir des dépôts d'Ubuntu.

    sudo apt-get install mysqltuner
    
  2. Pour l'exécuter :

    mysqltuner
    

    Le nom et le mot de passe de l'utilisateur racine MySQL vous seront demandés. La sortie affichera deux domaines d'intérêt :les recommandations générales et les variables à ajuster.

MySQL Tuner est un excellent point de départ pour optimiser un serveur MySQL, mais il serait prudent d'effectuer des recherches supplémentaires pour des configurations adaptées aux applications utilisant MySQL sur votre Linode.

Plus d'informations

Vous pouvez consulter les ressources suivantes pour plus d'informations sur ce sujet. Bien que ceux-ci soient fournis dans l'espoir qu'ils seront utiles, veuillez noter que nous ne pouvons pas garantir l'exactitude ou l'actualité des documents hébergés en externe.

  • Manuel de référence de MySQL 5.5
  • Manuel PHP MySQL
  • Exemples Perl DBI pour DBD::mysql
  • Guide de l'utilisateur de MySQLdb
  • Tutoriel MySQL Tuner