Jak*_*old 212 mysql sql database
有可能mysqldump
单身SQL query
吗?
我的意思是转储整个数据库,就像phpmyadmin
导出到的那样SQL
Zak*_*Zak 272
不是mysqldump,而是mysql cli ......
mysql -e "select * from myTable" -u myuser -pxxxxxxxxx mydatabase
Run Code Online (Sandbox Code Playgroud)
您可以根据需要将其重定向到文件:
mysql -e "select * from myTable" -u myuser -pxxxxxxxx mydatabase > mydumpfile.txt
Run Code Online (Sandbox Code Playgroud)
更新:原始帖子询问他是否可以通过查询从数据库转储.他问的问题和他的意思是不同的.他真的只想mysqldump所有表.
mysqldump --tables myTable --where="id < 1000"
Run Code Online (Sandbox Code Playgroud)
Tho*_*hle 248
这应该工作
mysqldump --databases X --tables Y --where="1 limit 1000000"
Run Code Online (Sandbox Code Playgroud)
小智 67
您可以将查询转储为csv,如下所示:
SELECT * from myTable
INTO OUTFILE '/tmp/querydump.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
Run Code Online (Sandbox Code Playgroud)
Gar*_*ary 60
使用where查询转储表:
mysqldump mydatabase mytable --where="mycolumn = myvalue" --no-create-info > data.sql
Run Code Online (Sandbox Code Playgroud)
转储整个表格:
mysqldump mydatabase mytable > data.sql
Run Code Online (Sandbox Code Playgroud)
笔记:
mydatabase
,mytable
和where语句.mysqldump
将在其输出中包含DROP TABLE
和CREATE TABLE
语句.因此,如果您希望在从保存的数据文件恢复时不删除表中的所有数据,请确保使用该--no-create-info
选项.-h
,-u
和-p
选项,以便分别指定所需的数据库主机,用户和密码.小智 38
您可以在mysqldump上使用--where选项来生成您正在等待的输出:
mysqldump -u root -p test t1 --where="1=1 limit 100" > arquivo.sql
Run Code Online (Sandbox Code Playgroud)
来自test.t1的最多100行将从数据库表中转储.
干杯,WB
MySQL Workbench 在 GUI 中也有这个功能。只需运行查询,单击导出/导入旁边的保存图标:
然后在列表中选择“SQL INSERT statements (*.sql)”。
输入名称,单击保存,确认表名称,您将拥有转储文件。
如果要将最后n条记录导出到一个文件中,可以运行以下命令:
mysqldump -u user -p -h localhost --where "1=1 ORDER BY id DESC LIMIT 100" database table > export_file.sql
Run Code Online (Sandbox Code Playgroud)
上面假设将要导出的表具有自动递增的id列,会将最后100条记录保存到export_file.sql中。
您将需要更改用户,本地主机,数据库和表的值。您可以选择更改id列并导出文件名。
归档时间: |
|
查看次数: |
302428 次 |
最近记录: |