数据分析sql技能之数据库导入

作者: 采菊东篱下 | 来源:发表于2017-07-29 13:19 被阅读60次

本系列文章均为实际工作中遇到的场景,以此记录下来,共同进步,更愉悦的工作。


作为数据分析师很多时候由于各种原因无法直接连接到数据库上进行sql操作。
尤其是需要大量数据计算的时候,虽然只是查询操作,但是不小心会产生非常大的CPU消耗,影响正常业务。

这个时候我们需要将线上的数据库导入到本地的mysql进行离线分析。

步骤如下:

本地安装好mysql数据库,如果需要导入的文件比较大,需要修改mysql数据库的配置文件my.cnf中的max-allowed-packet 选项,否则导入的过程中会产生如下错误:

ERROR 2006 (HY000) at line 1: MySQL server has gone away

查找my.cnf

通过下面的命令得知配置文件的几个可能位置和优先级。

mysqld --help --verbose | more

...
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
...

修改max-allowed-packet

Mac下通过brew 安装后配置文件位置 /usr/local/etc/my.cnf

参考官方文档 https://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar_max_allowed_packet

修改后的配置文件如下:

# Default Homebrew MySQL server config
[mysqld]
# Only allow connections from localhost
bind-address = 127.0.0.1
max-allowed-packet = 1073741824

修改后重新启动mysql服务,mac下命令如下:

mysql.server restart

导入sql文件

# 创建一个数据库,假设名字为demo,这里可以随便起名。
mysql> drop database demo;
mysql> create database demo;
mysql> use demo;
# 导入sql文件
mysql> source /path/to/data.sql

导入完成后就可以在本地肆无忌惮的进行各种各样的数据分析了。

相关文章

网友评论

  • JaeGwen:最近也在考虑转岗做数据分析湿 有什么好的建议吗?学爬虫 sql 数据库等
    采菊东篱下:@JaeGwen 数学自然是懂得越多越好,但是一开始没必要太深,每天看一点,不用专门花时间在上面。
    JaeGwen:@陈阿福说 统计学 应用数学等学科性的东西有什么具体的要求
    采菊东篱下:可以参考之前写过的一篇文章《数据分析师从何学起》
    http://www.jianshu.com/p/8e9de1012aaa

本文标题:数据分析sql技能之数据库导入

本文链接:https://www.haomeiwen.com/subject/zoaqlxtx.html