zoukankan      html  css  js  c++  java
  • python + docker, 实现天气数据 从FTP获取以及持久化(一)

    前情提要

    最近项目需要天气数据(预报和历史数据)来作为算法程序的输入。 项目的甲方已经购买了天气数据, 依照他们的约定,天气数据的供应商会将数据以"文本" (.TXT)的方式发到FTP上面。 

    因此,我们需要将这些数据从FTP上面获取出来,并做好持久化工作。以备我们算法程序的使用。

    持久化准备

    由于项目的需要和考虑历史的一些因素,我们这边的数据库选型时MYSQL。她作为一个开源的关系型数据库,个人感觉还是非常不错滴~~

    此外,利用Python和docker作为开发与部署(devops)相结合的模式,在业界也是非常流行的一种方式。

    这里我们先主要介绍一下如何使用docker部署mysql环境:

    1.  获取 MySQL 镜像

    # docker pull mysql:8.0

    2. 启动 MySQL 容器

    # docker run -d -e MYSQL_ROOT_PASSWORD=password -p 3306:3306 --name test-mysql -v /home/ct/mysql/data:/var/lib/mysql mysql:8.0

    注: 我们在这里同时设置了:

    1. 暴露在宿主机上的端口3306;

    2. 数据挂载点 -v /home/ct/mysql/data;

    3.  进入 mysql 容器,验证本地登录

    # docker exec -it test-mysql /bin/bash
    # mysql -u root -ppassword

     4. 设置权限,允许远程root用户访问

     
    MySQL允许远程访问
    
    (1)改表。
    # mysql -u root -p 
    mysql> use mysql; 
    mysql> update user set host = '%'where user= 'root'; 
    mysql>select host, user from user;
    
     (2)赋予任何主机访问数据的权限 
    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 
    //使修改生效 
    mysql> flush privileges; 
    //退出MySQL服务器 
    mysql> EXIT

    我这里用的是第二种方式,成功!!

    感谢大家的收看,欢迎留言交流哦!!

    预祝大家端午节假日有个好心情~~

    参考资料:

    https://hub.docker.com/_/mysql/

    https://www.linuxidc.com/Linux/2017-03/142404.htm

  • 相关阅读:
    DVWA--SQL Injection(SQL注入)
    DVWA--Insecure CAPTCHA(不安全的验证码)
    DVWA--File Upload(文件上传)+中国菜刀下载及使用
    DWVA--File Inclusion(文件包含)
    DVWA--CSRF(跨站请求伪造)
    DVWA--Command Injection(命令行注入)
    2020.08.06【省选B组】模拟 总结
    2020.08.05【省选B组】模拟 总结
    2020.08.04【省选B组】模拟 总结
    jzoj 5251. 【GDOI2018模拟8.11】决战
  • 原文地址:https://www.cnblogs.com/atuotuo/p/9190518.html
Copyright © 2011-2022 走看看