Crear una base de datos MySQL desde la terminal


¿Por qué crear una BD desde la terminal?

Crear una base de datos desde la terminal te da más control y flexibilidad, especialmente si no tenés acceso a phpMyAdmin o preferís trabajar desde la línea de comandos.


Requisitos previos

Para crear una base de datos desde la terminal necesitás:

  • ✅ Acceso SSH a tu servidor
  • ✅ Usuario con permisos para crear bases de datos (generalmente root o un usuario con privilegios)
  • ✅ MySQL o MariaDB instalado en el servidor

Paso 1: Conectarte al servidor por SSH

  • Conectate a tu servidor usando SSH
  • Ingresá con un usuario que tenga permisos de administrador
ssh [email protected]

Paso 2: Acceder a MySQL

Una vez conectado, ingresá a MySQL:

mysql -u root -p

Te pedirá la contraseña de root. Ingresala y presioná Enter.

Nota: Si usás un usuario diferente, reemplazá root por tu usuario.


Paso 3: Crear la base de datos

Una vez dentro de MySQL, ejecutá el siguiente comando:

CREATE DATABASE nombre_de_base_de_datos;

Ejemplo:

CREATE DATABASE mi_webapp;

Importante: No olvides el punto y coma (;) al final del comando.

Si todo salió bien, verás:

Query OK, 1 row affected (0.00 sec)

Paso 4: Crear un usuario y otorgar permisos (recomendado)

Es buena práctica crear un usuario específico para cada base de datos:

CREATE USER 'nombre_usuario'@'localhost' IDENTIFIED BY 'contraseña_segura';

Ejemplo:

CREATE USER 'usuario_app'@'localhost' IDENTIFIED BY 'MiContraseña123!';

Otorgá permisos completos sobre la base de datos:

GRANT ALL PRIVILEGES ON nombre_de_base_de_datos.* TO 'nombre_usuario'@'localhost';

Ejemplo:

GRANT ALL PRIVILEGES ON mi_webapp.* TO 'usuario_app'@'localhost';

Aplicá los cambios:

FLUSH PRIVILEGES;

Paso 5: Verificar que la base de datos se creó

Para ver todas las bases de datos:

SHOW DATABASES;

Deberías ver tu nueva base de datos en la lista.

Para ver los usuarios creados:

SELECT user, host FROM mysql.user;

Opción: Crear desde un solo comando

También podés crear la base de datos sin entrar a MySQL, ejecutando desde la terminal:

mysql -u root -p -e "CREATE DATABASE nombre_de_base_de_datos;"

Ejemplo:

mysql -u root -p -e "CREATE DATABASE mi_webapp;"

Te pedirá la contraseña y creará la base de datos directamente.


Configurar charset y collation

Para crear una base de datos con charset y collation específicos (recomendado para UTF-8):

CREATE DATABASE nombre_de_base_de_datos 
CHARACTER SET utf8mb4 
COLLATE utf8mb4_unicode_ci;

Ejemplo:

CREATE DATABASE mi_webapp 
CHARACTER SET utf8mb4 
COLLATE utf8mb4_unicode_ci;

Ventajas de utf8mb4:

  • ✅ Soporta emojis y caracteres especiales
  • ✅ Compatible con todos los idiomas
  • ✅ Recomendado para aplicaciones modernas

Problemas comunes

Error "Access denied"

  • Verificá que el usuario tenga permisos para crear bases de datos
  • Usá el usuario root o un usuario con privilegios
  • Verificá que la contraseña sea correcta

Error "database already exists"

  • La base de datos ya existe
  • Verificá con SHOW DATABASES;
  • Usá un nombre diferente o eliminá la existente primero

Error de sintaxis

  • Verificá que no falte el punto y coma (;) al final
  • Verificá que no haya errores de escritura
  • Verificá que los nombres no tengan espacios o caracteres especiales

Eliminar una base de datos

Si necesitás eliminar una base de datos:

DROP DATABASE nombre_de_base_de_datos;

⚠️ Advertencia: Esto eliminará permanentemente la base de datos y todos sus datos. Asegurate de tener un backup antes.


exit

O presioná CTRL + D


Consejos

  • ✅ Usá nombres descriptivos para tus bases de datos
  • ✅ Creá un usuario específico para cada base de datos
  • ✅ Usá contraseñas fuertes para los usuarios
  • ✅ Configurá charset utf8mb4 para soporte completo de caracteres
  • ✅ Hacé backup antes de eliminar bases de datos
  • ✅ Documentá los usuarios y permisos creados

¿Necesitás ayuda?

Si tenés problemas creando bases de datos o necesitás asistencia, abrí un ticket desde el panel de billing.baires.host o contactanos por soporte.

También podés escribirnos por nuestras redes:

¿Fue útil la respuesta? 0 Los Usuarios han Encontrado Esto Útil (0 Votos)