Tutoriales

Cómo usar MySQL con la aplicación Ruby On Rails

Ruby on Rails utiliza SQLite3 como colchoneta de datos predeterminada. Si acertadamente Sqlite funciona muy acertadamente con Rails, a veces no es suficiente para su aplicación Rails. Si desea escalabilidad, paralelismo, centralización y control, debería probar bases de datos más robustas como MySQL o PostgreSQL. Esta finalidad le mostrará cómo usar MySQL con la aplicación Ruby on Rails en Ubuntu Linux.

1. Instale MySQL en Ubuntu

MySQL está acondicionado en los repositorios tipificado de la mayoría de las distribuciones tipo Linux y Unix.

Para instalar MySQL en Debian, Ubuntu y sus derivados, haga lo posterior:

$ sudo apt install mysql-server mysql-client libmysqlclient-dev

La libmysqlclient-dev El paquete contiene los archivos necesarios para clasificar mysql2 Tesoro. Ruby on Rails usado mysql2 Renuevo para conectarse a MySQL al configurar una aplicación Rails.

1.1. Configurar la contraseña de root de MySQL

A continuación, configure la contraseña del agraciado raíz de MySQL ejecutando el posterior comando:

$ sudo mysql_secure_installation

Ingresar «Y» Para configurar el componente VALIDATE PASSWORD:

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?

Press y|Y for Yes, any other key for No: y

Seleccione el nivel de comprobación de contraseña. Las comprobaciones de contraseña disponibles son bajo, medio y musculoso. Aquí elijo la comprobación de contraseña de bajo nivel ingresando cero (0).

There are three levels of password validation policy:

LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0

A continuación, ingrese la contraseña de root de MySQL dos veces. La contraseña debe ser segura y contener al menos 8 caracteres. prensa Y. sigue delante:

Please set the password for root here.

New password:

Re-enter new password:

Estimated strength of the password: 100 
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y

A continuación, se le hará una serie de preguntas. Arte Y. y presione ENTER para cada pregunta. Esto eliminará usuarios anónimos, no permitirá el inicio de sesión de usuarios remotos y eliminará la colchoneta de datos de prueba.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.

Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
- Dropping test database...
Success.

- Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.

All done!

¡Hecho! Hemos establecido la contraseña del agraciado root de MySQL.

1.2. Instale el regulador MySQL

Instale el regulador MySQL llamado mysql2 Renuevo que la aplicación Rails puede usar para conectarse a la colchoneta de datos MySQL.

$ gem install mysql2

¡Todo pronto! Las aplicaciones Rails ahora pueden conectarse al servidor de colchoneta de datos MySQL.

Sigamos delante y creemos una nueva aplicación Rails usando la colchoneta de datos MySQL.

2. Utilice MySQL con la aplicación Ruby on Rails

Cómo crear una nueva aplicación Rails emplazamiento ostechnixapp y utilice la colchoneta de datos MySQL como colchoneta de datos predeterminada. Haz lo posterior:

$ rails new ostechnixapp -d mysql

Esto creará una aplicación Rails emplazamiento ostechnixapp en un directorio llamado ostechnixapp e instale las dependencias de gemas mencionadas anteriormente Gemfile Con bundle install.

Luego de crear el ostechnixapp Aplicación, cambie a su directorio:

$ cd ostechnixapp/

Edite el archivo de configuración de la colchoneta de datos de la aplicación:

$ vi config/database.yml

En el rango predeterminado, reemplace MySQL root Contraseña de agraciado con la previamente creada:

[...]
default: &default
adapter: mysql2
encoding: utf8mb4
pool: <%= ENV.fetch("RAILS_MAX_THREADS")  5  %>
username: root
password: Password123#@!
socket: /var/run/mysqld/mysqld.sock
[...]
Establezca la contraseña raíz de MySQL en el archivo de configuración de la colchoneta de datos de la aplicación Rails

Guarde y falleba el archivo.

Ahora cree la nueva colchoneta de datos para su aplicación Rails con el posterior comando:

$ rake db:create

Esto creará dos bases de datos con el nombre de su aplicación Rails. Por ejemplo, si el nombre de la aplicación es ostechnixapp, se creará ostechnixapp_development y ostechnixapp_test.

Puede comprobar si las bases de datos además se crearon correctamente desde MySQL.

Inicie sesión en MySQL como root Becario:

$ mysql -u root -p

Verifique que las bases de datos se hayan creado ingresando el posterior comando:

mysql> show databases;

Salida de muestra:

+--------------------------+
 | Database                 |
 +--------------------------+
 | information_schema       |
 | mysql                    |
 | ostechnixapp_development |
 | ostechnixapp_test        |
 | performance_schema       |
 | sys                      |
 +--------------------------+
 6 rows in set (0.01 sec)
 mysql> 
Use MySQL con la aplicación Ruby on Rails
Use MySQL con la aplicación Ruby on Rails

Salga del indicador de MySQL.

Ahora inicie su servidor web Rails con el posterior comando:

$ rails server -b 0.0.0.0

Esto iniciará su aplicación Rails en el puerto tipificado 3000. Aquí hemos pasado el argumento -b 0.0.0.0 para alcanzar a la aplicación Rails desde cualquier computadora en la red recinto.

Puede alcanzar a su página de prueba de Rails en su navegador web navegando a la URL: http://ip-address:3000

Página de prueba de Ruby on Rails
Página de prueba de Ruby on Rails

Si desea utilizar un puerto diferente, pase -pag Marque inmediato con el número de puerto como se muestra a continuación:

$ rails server -b 0.0.0.0 -p 8080

Ahora puede alcanzar a su aplicación Rails usando esta URL: http://ip-address:8080

3. Elimina la aplicación Rails.

Si usó la colchoneta de datos SQLite predeterminada, puede eliminar la aplicación Rails simplemente eliminando el directorio de la aplicación.

$ rm -fr ostechnixapp

Si ha utilizado MySQL, primero debe eliminar las bases de datos asociadas a su aplicación con el posterior comando:

$ rake db:drop

Y luego elimine el directorio de la aplicación:

$ rm -fr ostechnixapp

Conclusión

En este tutorial hemos explicado por qué necesitamos usar bases de datos de modelos cliente / servidor para nuestra aplicación Rails y cómo construir una aplicación Rails usando la colchoneta de datos MySQL. Igualmente vimos cómo eliminar una aplicación Rails.

Si tiene varias copias de la aplicación Rails ejecutándose al mismo tiempo, varias aplicaciones y usuarios que utilizan la misma colchoneta de datos, aléjese de Sqlite y pruebe las bases de datos maniquí cliente / servidor como MySQL. Si desea almacenamiento de datos recinto para aplicaciones individuales, Sqlite es más que suficiente.

Ojeada relacionada:

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba