
在Mysql程序中有我自己的一个数据库共5张表,里边数据不算太多。我现在想把他们全部弄到另一台电脑中去,该怎么弄,如果不用其它的软件工具,只用Mysql自已的程序不知可否?
注:不用考虑 *** 作系统。
---------------------------------------------------------------
在dos命令提示符下使用mysqldump命令进行备份
如下:
C:\Documents and Settings\Administrator>mysqldump yinshi >c:\\backuptxt -uroot
-p12142022
说明:yinshi是我的数据库名,里面有5张表; c:\\backuptxt 是我备份出来文件名和路径;
-u,-p参数后面跟的分别是用户名和密码
将你备份出来的文件我这里是backuptxt拷贝到另一台机上,再在dos命令提示符下用mysql命令,进行恢复,如下:
C:\Documents and Settings\Administrator>mysql < c:\\backuptxt -uroot -p12142022
or
mysql>source backuptxt;(这里backuptxt在放在data目录下)
---------------------------------------------------------------
如果另一台机器上也安装了mysql,可以直接导入
C:\mysql\bin>mysqldump -h172206250 -udeveloper -p123456 --opt server_databasename | mysql -hlocalhost -uroot -C obj_databasename
172206250源服务器ip
developer源服务器连接用户名
---------------------------------------------------------------
有两种办法。
1、在B机器上装mysql。
将A机器上的mysql/data下的你的数据库目录整个拷贝下来。
将B机器上的mysql服务停止。
找到B机器上的mysql/data目录,将你拷贝的目录粘贴进去,然后启动mysql服务就可以了。
2、使用SQL语句备份和恢复
你可以使用SELECT INTO OUTFILE语句备份数据,并用LOAD DATA INFILE语句恢复数据。这种方法只能导出数据的内容,不包括表的结构,如果表的结构文件损坏,你必须要先恢复原来的表的结构。
语法:
SELECT INTO {OUTFILE | DUMPFILE} ’file_name’ FROM tbl_name
LOAD DATA [LOW_PRIORITY] [LOCAL] INFILE ’file_nametxt’ [REPLACE | IGNORE]
INTO TABLE tbl_name
SELECT INTO OUTFILE ’file_name’
`select into outfile` 只能输出到mysql server,而不能输出到客户端。(mysql使用客户端/服务端的访问方式,用户通过mysql客户端访问mysql数据库服务端)
如果想导出数据到客户端,可以通过管道的方式来实现。
如:
mysql -h Remote_host -e "SELECT " > file_on_the_client
参考: [MySQL SELECT INTO OUTFILE to a different server](>
你先连接到远程计算机 打开命令行。。
1导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
如:mysqldump -u root -p wodeshujuku > machaosql
如果在c:下,则导出到c:下machaosql文件
2导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_userssql
3导出一个数据库结构
mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_dbsql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
4导入数据库
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库名
source c:datasql
也可以直接source 然后把文件拖进来回车就行了
首先,你自己的电脑上必须要安装了MYSQL服务器。
第二步,进入DOS命令状态,使用命令
mysqldump -h 主机名称 -u 用户名 -p 密码 数据库名称 >导出文件存放位置
例如:mysqldump -h 1014215632 -u root -p admin test >c:\testsql
将远程数据库服务的test数据库导入到本地C盘,名称为testsql
用途:将远程服务器的数据库拷到本地。
Java代码
复制代码代码如下:
mysqldump -h '114212111123' -uROSE -pxxxooo --opt --compress ITSM --skip-lock-tables | mysql -h localhost -uroot -proot ITSMC
解释:
114212111123 远程服务器名称
ROSE 远程数据库登录名
xxxooo 远程数据库登录密码
ITSM远程数据库名(即:复制的源)
localhost 本地数据库名称(一般情况下都是这个)
root 本地数据库登录名(一般情况下都是这个)
root 本地数据库登录密码(一般情况下都是这个)
ITSMC 本地(即:复制的目的)
sql解释:
mysqldump 是mysql的一个专门用于拷贝 *** 作的命令
--opt *** 作的意思
--compress 压缩要传输的数据
--skip-lock 忽略锁住的表(加上这句能防止当表有外键时的报错)
-tables 某数据库所有表
-h 服务器名称
-u 用户名(后面无空格,直接加用户名)
-p 密码(后面无空格,直接加密码)
注意:
-u、-p的后面没有空格,直接加用户名和密码!!!
MySQL workbench是mysql官方提供的一个可视化的mysql管理工具,可以进行数据建模、数据库管理等功能,当然也支持远程连接数据库。
通常我们都使用phpmyadmin来管理数据库,但它是基于web的,而mysql workbench则是一款桌面软件。
导出单个数据库
mysqldump
-u
root
-p
database_name
>
outfile_namesql
导出所有数据库
mysqldump
-u
root
-p
--all-databases
>
outfile_namesql
导出数据库表
mysqldump
-u
root
-p
database_name
table_name
>
outfile_namesql
导入sql文件
导入数据库
mysql
-u
root
-p
进入mysql
执行source
outfile_namesql(包含存储路径)
b
导入数据库表
mysql
-u
root
-p
进入mysql
mysql>use
database_name;
mysql>source
outfile_namesql(包含存储路径)
以上是命令行方式,如果 *** 作系统时windows,可以选择用mysql客户端工具,如Sqlyog *** 作导出数据和导入数据。
更详细信息可以Google,下面提供一个参考网址
>
以上就是关于怎样把我的Mysql中的数据库复制到另一台电脑中全部的内容,包括:怎样把我的Mysql中的数据库复制到另一台电脑中、mysql select into outfile如何将远程数据表导出放到本地、mysql数据库怎么远程备份,导出导入数据啊,望高手指教指导,有重谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)