Retour au blog

Utilisation de MySQL avec une application Ruby on Rails sur Ubuntu 21.04

Utilisation de MySQL avec une application Ruby on Rails sur Ubuntu 21.04

Ruby est un langage de programmation puissant. C’est un langage interprété, de haut niveau et à usage général qui intègre plusieurs paradigmes de programmation. Yukihiro Matsumoto, le créateur de Ruby, a mélangé différentes parties de ses langages de programmation préférés comme Perl, Ada, Lisp, Eiffel, Smalltalk, etc., et a créé Ruby. Selon ses propres mots, il avait l'intention de rendre Ruby « plus naturel, pas simple”.

Une grande partie de la popularité de Ruby vient de Ruby on Rails. C'est un framework web puissant construit par-dessus Ruby. Il sert de backend à de nombreuses applications web, par exemple Airbnb, Spotify, GitHub, SoundCloud, et plus encore. La philosophie de Ruby on Rails est d'offrir un framework intuitif pour accélérer la création de pages web robustes et performantes.

En tant que framework web, Ruby on Rails peut fonctionner avec des moteurs de base de données populaires, par exemple, SQLite, MySQL/MariaDB, et PostgreSQL. Ce guide présentera la construction des bases d'une application Ruby on Rails qui utilise MySQL comme moteur de base de données.

Prérequis

  • Toutes les étapes présentées dans ce guide sont effectuées sur Ubuntu 21.04. En savoir plus sur la configuration d'un serveur Ubuntu ici.
  • Nous présenterons également une démonstration rapide de l'installation et de la configuration d'un serveur MySQL. Pour plus d'informations, reportez-vous à ce guide sur la configuration de MySQL.
  • Quant à l'installation et à la gestion de Ruby, nous utiliserons rbenv. C'est un outil conçu pour aider à gérer l'environnement Ruby. Par rapport à RVM, rbenv vient avec ses différences.

Étape 1 : Installation et configuration de MySQL

MySQL servira de backend de base de données pour notre application Ruby on Rails. En supposant que vous n'avez pas encore installé et configuré MySQL, suivez le guide. Lancez un terminal et mettez à jour le cache APT :

MySQL with Ruby on Rails code screenshot 1

Ensuite, installez les composants MySQL :

MySQL with Ruby on Rails code screenshot 2

Une fois l'installation terminée, exécutez le script MySQL suivant. Il effectuera une configuration rapide après l'installation :

Le script posera plusieurs questions. Suivez les étapes pour terminer la configuration initiale :

MySQL with Ruby on Rails code screenshot 4

3

4

MySQL with Ruby on Rails code screenshot 5

  • Étape supplémentaire

L'étape suivante est facultative et ne doit être effectuée que si, plus loin dans le tutoriel, Ruby on Rails ne parvient pas à se connecter au serveur MySQL. Elle configure l'utilisateur root dans MySQL pour utiliser mysql_native_password pour autoriser les connexions par mot de passe traditionnelles. Accédez au compte root sur Ubuntu :

Maintenant, lancez le shell MySQL root sans vérification du mot de passe :

Ensuite, exécutez la requête suivante pour changer le mot de passe et définir mysql_native_password comme méthode d'authentification :

MySQL with Ruby on Rails code screenshot 6

Étape 2 : Installation et configuration de Ruby et Ruby on Rails

Notre serveur de base de données est prêt pour la production. Nous devons maintenant installer Ruby. Comme mentionné précédemment, nous utiliserons rbenv comme gestionnaire de version Ruby pour notre projet. Ruby on Rails est disponible sous forme de gem Ruby.

  • Installation de rbenv

Le gestionnaire Ruby rbenv est directement disponible depuis le serveur de paquets officiel d'Ubuntu. Pour les autres distributions, consultez le guide d'installation officiel de rbenv.

Lancez un terminal et installez-le immédiatement :

MySQL with Ruby on Rails code screenshot 7

Ensuite, nous devons intégrer rbenv avec le shell par défaut. Exécutez la commande rbenv suivante :

MySQL with Ruby on Rails code screenshot 8

Comme l'indique la sortie, pour bash, nous devons inclure la ligne dans le fichier local bashrc . Sans entrer dans les détails, le fichier bashrc est chargé chaque fois que l'utilisateur ouvre un nouveau shell en mode interactif. Ouvrez le fichier dans un éditeur de texte et ajoutez le texte suivant :

nano

Enregistrez le fichier et fermez l'éditeur. Il est recommandé de redémarrer le terminal pour que les modifications prennent effet. Alternativement, vous pouvez recharger le fichier bashrc dans le shell actuel :

Ensuite, nous installerons un rbenv plugin pour fournir la prise en charge de la commande rbenv install. Ce plugin est directement disponible depuis le rbenv dépôt GitHub. Exécutez les commandes suivantes :

git clone

Pour tester notre configuration rbenv, exécutez le script rbenv-doctor :

curl

Il vérifiera les différents composants et signalera si tout est correct.

  • Installation de Ruby

Une fois rbenv est configuré, nous sommes prêts à installer Ruby. La commande suivante listera toutes les versions disponibles de Ruby :

rbenv install -l

La sortie sera un peu longue, il est donc conseillé de la faire passer par more ou less pour une meilleure navigation. La liste contient également diverses versions de Ruby. Pour les besoins de ce guide, nous nous concentrerons sur la dernière version officielle de Ruby. Au moment de la rédaction de cet article, il s'agit de Ruby v3.0.3.

Maintenant, installez Ruby :

rbenv install

La commande suivante déclarera la version de Ruby installée comme version globale disponible pour toutes les applications :

Vérifiez l'installation de Ruby :

ruby

  • Installation de Ruby on Rails

Le framework web est disponible sous forme de gem pour Ruby. Bien que Ruby on Rails soit directement disponible depuis les serveurs de paquets Ubuntu, l'installer en tant que gem offre plus de flexibilité.

Tout d'abord, installez la gem Bundler. C'est un outil qui résout les dépendances des gems. Rails en dépend :

gem install bundler

L'exécution de la commande suivante installera la dernière version stable de Ruby on Rails en tant que gem :

gem install rails

Si vous souhaitez installer une version spécifique, la structure de la commande ressemblera à ceci :

Une fois les gems installées, exécutez la commande suivante :

rbenv rehash

Le gestionnaire Ruby rbenv fonctionne en créant des répertoires dédiés pour les shims qui pointent vers les fichiers de la version de Ruby actuellement activée. La sous-commande rehash indique à rbenv de maintenir les shims dans ce répertoire pour correspondre à chaque commande Ruby sur chaque version installée de Ruby sur le serveur. Elle doit être exécutée à chaque fois que vous installez une nouvelle version de Ruby ou une gem qui fournit des commandes similaires à Rails.

Vérifiez l'installation de Rails :

rails

Étape 3 : Installation de la gem MySQL

Pour se connecter au serveur MySQL, Rails a besoin d'un adaptateur. Nous utiliserons la gem mysql2 pour cette fonctionnalité. Installez la gem mysql2 :

gem install mysql2

Étape 4 : Création et configuration d'une nouvelle application Rails

  • Création d'une application d'exemple

Jusqu'à présent, nous avons configuré tous les composants nécessaires pour établir notre application Rails. La commande suivante créera un répertoire dédié pour l'application et y placera tous les fichiers nécessaires avec le support MySQL :

rails new

  • Configuration de la connexion MySQL

Maintenant, nous devons renseigner les informations MySQL nécessaires pour que Rails puisse se connecter à la base de données et échanger des données. Par défaut, Rails se connecte à MySQL en tant que root. Ouvrez le fichier de configuration de la base de données Rails :

nano config

Faites défiler vers le bas jusqu'à la section suivante et saisissez le mot de passe root pour MySQL. Ensuite, enregistrez le fichier et fermez l'éditeur.

  • Application des modifications de la base de données

Si tout s'est bien passé, Rails devrait maintenant être en mesure de se connecter à MySQL et d'effectuer les opérations de base de données nécessaires. La commande suivante créera les bases de données requises :

rake db

Étape 5 : Test de la configuration

Démarrez le serveur de développement Rails :

rails server

Vous devriez pouvoir accéder à la page d'accueil à l'adresse URL suivante :

URL

Conclusion

Dans ce guide, nous avons installé Ruby en utilisant rbenv, installé la gem Rails et configuré un exemple d'application Rails pour se connecter à MySQL et l'utiliser comme moteur de base de données. Cela constitue un excellent squelette pour une application web évolutive et centralisée.

Pour apprendre à installer Ruby on Rails avec RVM sur Ubuntu 20.04, consultez le tutoriel suivant Installer Ruby on Rails avec RVM sur Ubuntu 20.04. Pour apprendre à configurer Ruby on Rails avec PostgreSQL, consultez le tutoriel suivant : Configurer Ruby on Rails avec PostgreSQL.

Bon développement !

author

Hark Labs

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.