mysqldump

远程导出mysql的数据为csv格式的文件

╄→гoц情女王★ 提交于 2020-02-29 21:06:43
Mysql自带数据导出的命令 into outfile(本地导出) SELECT * FROM server_warning_repaired into outfile '/tmp/test.csv' CHARACTER SET gbk fields terminated by ',' optionally enclosed by '\"'; 整体来看,select语句+into outfile+ ‘文件路径’+ 文件参数 功能:导出数据到服务器本地路径下的test.csv文件, CHARACTER SET gbk 解决导出文件中文乱码问题 相关参数: · FIELDS TERMINATED BY '字符串':设置字符串为字段之间的分隔符,可以为单个或多个字符。默认值是“\t”。 · FIELDS ENCLOSED BY '字符':设置字符来括住字段的值,只能为单个字符。默认情况下不使用任何符号。 · FIELDS OPTIONALLY ENCLOSED BY '字符':设置字符来括住CHAR、VARCHAR和TEXT等字符型字段。默认情况下不使用任何符号。 · FIELDS ESCAPED BY '字符':设置转义字符,只能为单个字符。默认值为“\”。 · LINES STARTING BY '字符串':设置每行数据开头的字符,可以为单个或多个字符。默认情况下不使用任何字符。 ·

MySQL定时备份(全量备份+增量备份)

非 Y 不嫁゛ 提交于 2020-02-29 20:03:23
MySQL 定时备份 参考 zone7_ 的 实战-MySQL定时备份系列文章 参考 zmcyu 的 mysql数据库的完整备份、差异备份、增量备份 更多binlog的学习参考 马丁传奇 的 MySQL的binlog日志 ,这篇文章写得认真详细,如果看的认真的话,肯定能学的很好的。 如果查看binlog是出现语句加密的情况,参考 mysql row日志格式下 查看binlog sql语句 说明 产品上线后,数据非常非常重要,万一哪天数据被误删,那么就gg了,准备跑路吧。 所以要对线上的数据库定时做 全量备份 和 增量备份 。 增量备份的优点是没有重复数据,备份量不大,时间短。但缺点也很明显,需要建立在上次完全备份及完全备份之后所有的增量才能恢复。 MySQL没有提供直接的增量备份方法,但是可以通过mysql二进制日志间接实现增量备份。二进制日志对备份的意义如下: 二进制日志保存了所有更新或者可能更新数据的操作 二进制日志在启动MySQL服务器后开始记录,并在文件达到所设大小或者收到flush logs 命令后重新创建新的日志文件 只需定时执行flush logs 方法重新创建新的日志,生成二进制文件序列,并及时把这些文件保存到一个安全的地方,即完成了一个时间段的增量备份。 全量备份 mysqldump --lock-all-tables --flush-logs --master

linux下mysql导入导出sql文件

三世轮回 提交于 2020-02-29 19:53:45
使用mysqldump导出数据库: # mysqldump -u root -p gzy > gzy.sql # mysqldump -u 数据库连接用户名 -p 目标数据库 > 存储的文件名 使用sql文件导入数据库: # mysql -u 用户名 -p 数据库名 < 数据库名.sql # mysql -u root -p gzy < gzy.sql 来源: https://www.cnblogs.com/flypig666/p/11742546.html

MySQL数据库的导入方法

那年仲夏 提交于 2020-02-29 07:51:37
问题 如何导入MySQL数据库 解决方案 1. 概述 MySQL数据库的导入,有两种方法: 1) 先导出数据库SQL脚本,再导入; 2) 直接拷贝数据库目录和文件。 在不同操作系统或MySQL版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生。 所以一般推荐用SQL脚本形式导入。下面分别介绍两种方法。 2. 方法一 SQL脚本形式 操作步骤如下: 2.1. 导出SQL脚本 在原数据库服务器上,可以用phpMyAdmin工具,或者mysqldump命令行,导出SQL脚本。 2.1.1 用phpMyAdmin工具 导出选项中,选择导出“结构”和“数据”,不要添加“DROP DATABASE”和“DROP TABLE”选项。 选中“另存为文件”选项,如果数据比较多,可以选中“gzipped”选项。 将导出的SQL文件保存下来。 2.1.2 用mysqldump命令行 命令格式 mysqldump -u用户名 -p 数据库名 > 数据库名.sql 范例: mysqldump -uroot -p abc > abc.sql (导出数据库abc到abc.sql文件) 提示输入密码时,输入该数据库用户名的密码。 2.2. 创建空的数据库 通过主控界面/控制面板,创建一个数据库。假设数据库名为abc,数据库全权用户为abc_f。 2.3. 将SQL脚本导入执行 同样是两种方法

cmd连接mysql的方法

亡梦爱人 提交于 2020-02-28 07:14:58
连接:mysql -h主机地址 -u用户名 -p用户密码 (注:u与root可以不用加空格,其它也一样) 断开:exit (回车) 创建授权:grant select on 数据库.* to 用户名@登录主机 identified by \"密码\" 修改密码:mysqladmin -u用户名 -p旧密码 password 新密码 删除授权: revoke select,insert,update,delete om *.* fromtest2@localhost; 显示数据库:show databases; 显示数据表:show tables; 显示表结构:describe 表名; 创建库:create database 库名; 删除库:drop database 库名; 使用库:use 库名; 创建表:create table 表名 (字段设定列表); 删除表:drop table 表名; 修改表:alter table t1 rename t2 查询表:select * from 表名; 清空表:delete from 表名; 备份表: mysqlbinmysqldump -h(ip) -uroot -p(password) databasenametablename > tablename.sql 恢复表: mysqlbinmysql -h(ip) -uroot -p

如何从mysqldump恢复转储文件?

怎甘沉沦 提交于 2020-02-28 07:02:54
我获得了一个MySQL数据库文件,需要将其还原为Windows Server 2008计算机上的数据库。 我尝试使用MySQL Administrator,但出现以下错误: 所选文件是由mysqldump生成的,不能由该应用程序还原。 我该如何工作? #1楼 它应该像运行此命令一样简单: mysql -u <user> -p < db_backup.dump 如果转储是单个数据库,则可能必须在文件顶部添加一行: USE <database-name-here>; 如果它是许多数据库的转储,则use语句已在其中。 要运行这些命令,请打开命令提示符(在Windows中)并 cd 到 mysql.exe 可执行文件所在的目录(您可能需要仔细检查一下,这取决于安装mysql的方式,即独立安装或作为WAMP等软件包的一部分)。 进入该目录后,应该能够像上面一样输入命令。 #2楼 当我们使用 mysqldump 创建转储文件时,它包含的是一个很大的SQL脚本,用于重新创建数据库内容。 因此,我们通过启动MySQL的命令行客户端来还原它: mysql -uroot -p (其中 root 是MySQL的管理员用户名),一旦连接到数据库,我们需要使用命令来创建数据库并向其中读取文件: create database new_db; use new_db; \. dumpfile.sql

mysql数据实时同步到Elasticsearch

北城余情 提交于 2020-02-26 17:33:00
mysql数据实时同步到Elasticsearch bellengao 关注 32018.06.20 18:20:43字数 1,456阅读 34,146 业务需要把mysql的数据实时同步到ES,实现低延迟的检索到ES中的数据或者进行其它数据分析处理。本文给出以同步mysql binlog的方式实时同步数据到ES的思路, 实践并验证该方式的可行性,以供参考。 mysql binlog日志 mysql的binlog日志主要用于数据库的主从复制与数据恢复。binlog中记录了数据的增删改查操作,主从复制过程中,主库向从库同步binlog日志,从库对binlog日志中的事件进行重放,从而实现主从同步。 mysql binlog日志有三种模式,分别为: ROW: 记录每一行数据被修改的情况,但是日志量太大 STATEMENT: 记录每一条修改数据的SQL语句,减少了日志量,但是SQL语句使用函数或触发器时容易出现主从不一致 MIXED: 结合了ROW和STATEMENT的优点,根据具体执行数据操作的SQL语句选择使用ROW或者STATEMENT记录日志 要通过mysql binlog将数据同步到ES集群,只能使用ROW模式,因为只有ROW模式才能知道mysql中的数据的修改内容。 以UPDATE操作为例,ROW模式的binlog日志内容示例如下: SET TIMESTAMP

Linux下常用mysql命令【2】

情到浓时终转凉″ 提交于 2020-02-26 03:34:48
1.开启和关闭 1.1.开启   systemctl start mysqld 1.2.关闭   systemctl stop mysqld 1.3.重启   systemctl restart mysqld 回到顶部 2.登录 2.1.密码明文   语法:mysql -u用户名 -p用户密码   举例:mysql -uroot -p123456 2.2.密码密文   语法:mysql -u用户名 -p+回车,然后输入密码   举例:mysql -uroot -p      回到顶部 3.修改密码 3.1.SET PASSWORD命令(需登录)   语法:mysql> set password for 用户名@localhost = password('新密码');   举例:mysql>set password for root@localhost = password('123456'); 3.2.使用sql语句更新 mysql 库中的 user 表(需登录)   mysql> use mysql;   mysql> update user set password=password('123') where user='root' and host='localhost';   mysql> flush privileges; 3.3.mysqladmin命令,明文(不需登录

Mysql 备份恢复与 xtrabackup备份

笑着哭i 提交于 2020-02-26 00:00:12
Mysql 备份恢复与 xtrabackup备份 1.1 备份的原因   备份是数据安全的最后一道防线,对于任何数据丢失的场景,备份虽然不一定能恢复百分之百的数据(取决于备份周期),但至少能将损失降到最低。衡量备份恢复有两个重要的指标:恢复点目标(RPO)和恢复时间目标(RTO),前者重点关注能恢复到什么程度,而后者则重点关注恢复需要多长时间。 1.1.1 备份的目录   做灾难恢复:对损坏的数据进行恢复和还原   需求改变:因需求改变而需要把数据还原到改变以前   测试:测试新功能是否可用 1.1.2 备份中需要考虑的问题   可以容忍丢失多长时间的数据;   恢复数据要在多长时间内完;   恢复的时候是否需要持续提供服务;   恢复的对象,是整个库,多个表,还是单个库,单个表。 1.1.3 备份的类型 热备份:   这些动态备份在读取或修改数据的过程中进行,很少中断或者不中断传输或处理数据的功能。使用热备份时,系统仍可供读取和修改数据的操作访问。 冷备份:   这些备份在用户不能访问数据时进行,因此无法读取或修改数据。这些脱机备份会阻止执行任何使用数据的活动。这些类型的备份不会干扰正常运行的系统的性能。但是,对于某些应用程序,会无法接受必须在一段较长的时间里锁定或完全阻止用户访问数据。 温备份:   这些备份在读取数据时进行,但在多数情况下,在进行备份时不能修改数据本身

MySQL备份之mysqldump

假如想象 提交于 2020-02-25 02:30:46
mysqldump 是 mysql自带的数据库备份工具 ,属于 单线程 ,大部分生产环境的mysql数据库备份都是使用该工具,mysqldump可以将数据导出为原生sql语句,在将其数据导入至数据库时,相当于是执行一遍备份文件中的所有sql语句, mysqldump 提供了 丰富的options选项 ,可以在 导出或者导入数据 的时候, 添加需要的options ,以便达到用户预期的效果 mysql常用参数 // 导出全部数据库。 // --all-databases , -A mysqldump -uroot -p --all-databases // 导出全部表空间。 // --all-tablespaces , -Y mysqldump -uroot -p --all-databases --all-tablespaces // 不导出任何表空间。 // --no-tablespaces , -y mysqldump -uroot -p --all-databases --no-tablespaces // 导出几个数据库。参数后面所有名字参量都被看作数据库名。 // --databases, -B mysqldump -uroot -p --databases [数据库名1] [数据库名2] // 每个数据库创建之前先添加drop数据库语句