2

我使用 MySQL Workbench 创建了一个 MySQL 数据库。它有大约20张桌子。我不知道如何在数据库上运行脚本。

基本上,我想制作一个数据库创建脚本,它允许我在任何其他 MySQL 服务器上创建我的数据库。

4

5 回答 5

9
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...

将其放入名为 mydbcreate.sql 的文件中并运行(从命令行)

mysql -u <myuser> -p < mydbcreate.sql
于 2010-03-16T19:01:03.973 回答
3

这里有一些提示:

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

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

它确实会生成一个包含结构和数据的文件。第二行将数据从文件中取出到数据库中。

-p 和密码之间没有空格。最好不要将密码放在您的命令中,因为这可能会出现在您的 .bash_history 中。如果您省略密码,系统将提示您输入:

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

mysql -u [username] -p [database_to_restore] < [backupfile.sql]
于 2010-03-16T18:58:48.313 回答
3

了解 mysql 命令行实用程序非常有用且重要,但对于执行常见任务,请使用数据库管理工具(例如 phpMyAdmin)来创建和管理数据库。这些工具使创建和浏览表、创建导出脚本(包含创建表、插入数据等所有查询的文件)和其他很棒的东西变得非常容易。

phpMyAdmin 很棒,可以在 LAMP 环境中运行,免费且易于使用。

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

在 phpMyAdmin 中导出数据库的屏幕(裁剪镜头)替代文本 http://www.typolight.org/tl_files/images/documentation/sql-export.jpg

于 2010-03-16T19:19:18.363 回答
2

也许您需要知道这些语句称为 DDL?那你可以去任何一个MySQL站点,问如何生成DDL?不是刻薄,只是说。. .

另外,你可以试试这个:

从命令行使用 mysqldump 和 --no-data 选项。如果需要更多信息,请寻求帮助。但一个简单的例子是:

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

(当然,没有花括号)

于 2010-03-16T18:56:05.603 回答
0

你有两个选择。

  1. 导出可以在任何 MySQL 服务器上存储和/或任意运行的 CREATE 脚本
  2. 直接与特定的 MySQL 服务器同步。

对于 #1,使用以下菜单命令

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

从这里,您可以使用 MySQL GUI Tools 之类的程序或查看此线程中的其他答案,以从命令行导入生成的 SQL 脚本。

对于 #2,使用以下菜单命令

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

在执行上述任一操作之前,您可能需要先通过以下方式建立连接

Database >> Manage Connections...

重要的!对于这两个选项,请确保仔细查看提示中可用的每个选项 - 小的设置可能会对输出产生很大的影响!

于 2010-03-16T19:01:35.943 回答