Pregunta

He creado una base de datos MySQL usando MySQL Workbench. Tiene cerca de 20 tablas. No puedo encontrar la manera de ejecutar secuencias de comandos en la base de datos.

Básicamente, quiero hacer un script de creación de base de datos que permitirá a mí para crear mi base de datos en cualquier otro servidor MySQL.

¿Fue útil?

Solución

create database mydatabase;

grant all on mydatabase.* to 'myuser'@'%' identified by 'mypasswd';

create table mytable (
id int not null auto_increment,
myfield varchar(255) not null default ''
);

etc ...

poner esto en un archivo llamado mydbcreate.sql y ejecutar (desde la línea de comandos)

mysql -u <myuser> -p < mydbcreate.sql

Otros consejos

Conocer las utilidades de línea de comandos de MySQL es útil y importante, pero para realizar tareas comunes utilizar una herramienta de administración de bases de datos, como phpMyAdmin, para crear y gestionar bases de datos. Estas herramientas hacen que sea extremadamente fácil de crear y navegar por las tablas, crear secuencias de comandos de exportación (un archivo con todas las consultas para crear tablas, insertar datos, etc ...), y otras grandes cosas.

phpMyAdmin es grande, se rueda y entorno LAMP, es gratuito y fácil de usar.

http://www.phpmyadmin.net/home_page/index.php

Screeny de exportar una base de datos en phpMyAdmin (Recortar foto) texto alternativo http://www.typolight.org/tl_files/images/documentation/sql-export.jpg

Estos son algunos consejos:

mysqldump -u [username] -p[password] [databasename] > [backupfile.sql]

y

mysql -u [username] -p[password] [database_to_restore] < [backupfile.sql]

Lo hace generar un archivo con las estructuras y los datos. La segunda línea se toman los datos del archivo de la base de datos.

No hay espacio entre -p y la contraseña. Sería mejor no poner la contraseña en su comando ya que esto puede terminar en su .bash_history. Si se omite la contraseña que se le solicitará:

mysqldump -u [username] -p [databasename] > [backupfile.sql]

y

mysql -u [username] -p [database_to_restore] < [backupfile.sql]

Tal vez lo que necesita es saber que esos estados se llaman DDL? A continuación, puede ir a cualquier sitio de MySQL y preguntar cómo generar DDL? Al no ser sarcástico, simplemente diciendo. . .

Además, se puede probar esto:

El uso mysqldump desde la línea de comandos con la opción --no-data. Pedir ayuda si necesita más información. Sin embargo, un ejemplo sencillo sería:

$ mysqldump -u{username} -p{password} {dbname} --no-data

(por supuesto, sin las llaves)

Existen dos opciones.

  1. Exportación de una secuencia de comandos CREATE que puede almacenar y / o arbitrariamente ejecutarse en cualquier servidor MySQL
  2. Sincronizar con un servidor MySQL específica directamente.

Para # 1, utilice el siguiente comando de menú

File >> Export >> Forward Engineer SQL CREATE Script...

A partir de aquí, se puede utilizar un programa como MySQL Query Browser o ver las otras respuestas en este hilo para importar la secuencia de comandos SQL generado a partir de la línea de comandos.

Para # 2, utilice el siguiente comando de menú

Database >> Forward Engineer...
- or -
Database >> Synchronize Model...

Antes de hacer cualquiera de estos, es posible que desee establecer una conexión a través de la primera

Database >> Manage Connections...

Importante! Para ambas opciones, asegúrese de mirar de cerca a todas las opciones disponibles en los mensajes - ajustes pequeños pueden hacer un gran cambio en la salida

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top