如何导出mysql数据
1.命令行工具
MySQL自带了一个命令行工具mysqldump,可以方便地将数据导出到文件中。使用该工具需要掌握一些基本的命令行技巧。
在Windows系统下,可以使用cmd或者PowerShell等命令行工具;在Linux系统下,可以使用Terminal或者SSH等命令行工具。
2.MySQL自带的导出工具
MySQL自带了一个图形化的导出工具MySQL Workbench,可以方便地导出数据到文件中。
首先,打开MySQL Workbench,连接到需要导出数据的数据库。然后,选择“Server”菜单下的“Data Export”选项,调出导出设置界面。
在导出设置界面中,选择需要导出的数据库和数据表;选择要导出的数据的格式,如CSV、JSON、SQL等;选择导出的文件名和路径等信息;最后点击“导出”按钮即可完成导出。
此外,MySQL Workbench还可以对导出数据进行可视化预览,方便用户检查导出结果。在导出设置界面中,选择“Data Previews”选项,即可预览数据。
3.第三方工具
除了MySQL自带的导出工具外,还有许多第三方工具可以用来导出MySQL数据。这些工具通常具有更丰富的功能和更友好的界面。
比如,HeidiSQL是一款免费开源的MySQL管理工具,可以进行数据库导入导出、数据查询、表结构修改等操作。使用HeidiSQL导出数据非常简单,只需连接到需要导出数据的数据库,选择要导出的表或查询,然后进行导出设置即可完成导出。
MysqlInnoDB删除数据后释放磁盘空间的方法
Innodb数据库对于已经删除的数据只是标记为删除,并不真正释放所占用的磁盘空间,这就导致InnoDB数据库文件不断增长。
如果在创建数据库的时候设置innodb_file_per_table=1,这样InnoDB会对每个表创建一个数据文件,然后只需要运行OPTIMIZE TABLE 命令就可以释放所有已经删除的磁盘空间。
运行OPTIMIZE TABLE 表名后,虽然最后会报Table does not support optimize, doing recreate + analyze instead,但其实已经成功了:)-------------------------------------------------------------如果没有设置这个参数,又想释放空间,彻底释放这些已经删除的数据,需要把数据库导出,删除InnoDB数据库文件,然后再倒入。下面是基本的步骤:
1 使用mysqldump命令将InnoDB数据库导出2 停止MySQL3 删除所有InnoDB数据库文件和日志4 启动MySQL并自动重建InnoDB数据库文件和日志文件5 导入前面备份的数据库文件# 备份数据库:mysqldump -uroot -proot --quick --force --all-databases > mysqldump.sql# 停止数据库service mysqld stop# 删除这些大文件rm /usr/local/mysql/var/ibdata1rm /usr/local/mysql/var/ib_logfile*# 手动删除除Mysql之外所有数据库文件夹,然后启动数据库service mysqld start# 还原数据mysql -uroot -proot < mysqldump.sql