原文链接

这里的排版没微信公众号那么友好,建议查看公众号原文

创建数据库

首先我们需要创建数据库和表等来存储数据

创建mysql.cnf配置文件

oot@ubuntu:/mnt/test_scrapy# cat mysql.cnf
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

创建mysql库

root@ubuntu:/home/vickey/test_scrapy# docker run -itd --name scrapy_mysql -p 8886:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /home/vickey/test_scrapy/mysql.cnf:/etc/mysql/conf.d/mysql.cnf mysql:latest
d8afb121afc65f9b4211d33885e73153c63eeb168122fe6d27f536d9bb27f0fe
root@ubuntu:/home/vickey/test_scrapy# docker exec -it scrapy_mysql /bin/bash
root@101bcf2ffb2d:/# mysql -uroot -p123456
mysql> show variables like '%charact%';
+--------------------------+--------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql-8.0/charsets/ |
+--------------------------+--------------------------------+
8 rows in set (0.00 sec) mysql> create database `movie_heaven_bar`;
Query OK, 1 row affected (0.00 sec) mysql> use movie_heaven_bar;
Database changed
mysql> show create database movie_heaven_bar;
+------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
| Database | Create Database |
+------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
| movie_heaven_bar | CREATE DATABASE `movie_heaven_bar` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci */ /*!80016 DEFAULT ENCRYPTION='N' */ |
+------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

创建表

mysql> create table newest_movie(id int not null auto_increment, movie_link varchar(100), movie_name varchar(100), movie_director varchar(50), movie_actors varchar(1000), movie_publish_date varchar(50), movie_score varchar(100), movie_download_link varchar(100), primary key (`id`));
Query OK, 0 rows affected (0.02 sec)

创建用户并授权

https://blog.csdn.net/weixin_38091140/article/details/82983229

本例mysql是mysql8,授权方法为:grant all privileges on movie_heaven_bar.* to 'movie'@'%' with grant option;,mysql8以下的版本授权方法为:grant all privileges on movie_heaven_bar.* to 'movie'@'%' identified by 'password';

mysql> create user 'movie'@'%' identified by '123123';
Query OK, 0 rows affected (0.01 sec)
mysql> show grants for 'movie'@'%';
+-----------------------------------+
| Grants for movie@% |
+-----------------------------------+
| GRANT USAGE ON *.* TO `movie`@`%` |
+-----------------------------------+
1 row in set (0.00 sec)
mysql> grant all privileges on movie_heaven_bar.* to 'movie'@'%' with grant option;
mysql> ALTER USER 'movie'@'%' IDENTIFIED WITH mysql_native_password BY '123123'; # 不改会报错:OperationalError: (2059, "Authentication plugin 'caching_sha2_password' cannot be loaded
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec) mysql> show grants for 'movie'@'%';
+-------------------------------------------------------------------------------+
| Grants for movie@% |
+-------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `movie`@`%` |
| GRANT ALL PRIVILEGES ON `movie_heaven_bar`.* TO `movie`@`%` WITH GRANT OPTION |
+-------------------------------------------------------------------------------+
2 rows in set (0.00 sec)

结语

很好,数据库创建完成,下一篇就是爬数据了,先来个图看看爬到数据效果。

scrapy电影天堂实战(一)创建数据库的更多相关文章

  1. scrapy电影天堂实战(二)创建爬虫项目

    公众号原文 创建数据库 我在上一篇笔记中已经创建了数据库,具体查看<scrapy电影天堂实战(一)创建数据库>,这篇笔记创建scrapy实例,先熟悉下要用到到xpath知识 用到的xpat ...

  2. scrapy框架用CrawlSpider类爬取电影天堂.

    本文使用CrawlSpider方法爬取电影天堂网站内国内电影分类下的所有电影的名称和下载地址 CrawlSpider其实就是Spider的一个子类. CrawlSpider功能更加强大(链接提取器,规 ...

  3. Scrapy爬豆瓣电影Top250并存入MySQL数据库

    d:进入D盘 scrapy startproject douban创建豆瓣项目 cd douban进入项目 scrapy genspider douban_spider movie.douban.co ...

  4. 【无私分享:ASP.NET CORE 项目实战(第四章)】Code First 创建数据库和数据表

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 本章我们来介绍下Asp.net Core 使用 CodeFirst 创建数据库和表,通过 控制台 和 dotnet ef 两种 ...

  5. ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(6)- 创建数据库

    前言 其实网站就是一座连接用户和数据库的梁桥,数据库通过网站,将信息以不同的方式,展现给客户,客户通过网站,对数据库进行各种操作 下面,我们用一个例子,给大家展示下基本的增删改查操作 创建数据库 创建 ...

  6. Flask项目实战:创建电影网站(2)

    flask网站制作后台时候常见流程总结 安利一个神神器: 百度脑图PC版 创建数据库 下面是创建User数据库,需要导入db库 #coding:utf8 from flask import Flask ...

  7. 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统五 | 完善业务自动创建数据库

    教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 04 | 强化设计方案 05 | 完善业务自动创建数据库 说明 这节来把基础的业务部分完善一下. 因为 IQue ...

  8. 猫眼电影和电影天堂数据csv和mysql存储

    字符串常用方法 # 去掉左右空格 'hello world'.strip() # 'hello world' # 按指定字符切割 'hello world'.split(' ') # ['hello' ...

  9. 14.python案例:爬取电影天堂中所有电视剧信息

    1.python案例:爬取电影天堂中所有电视剧信息 #!/usr/bin/env python3 # -*- coding: UTF-8 -*- '''======================== ...

随机推荐

  1. python基础-2 编码转换 pycharm 配置 运算符 基本数据类型int str list tupple dict for循环 enumerate序列方法 range和xrange

    1.编码转换 unicode 可以编译成 UTF-U GBK 即 #!/usr/bin/env python # -*- coding:utf-8 -*- a = '测试字符' #默认是utf-8 a ...

  2. python中json的基本使用

    一.json的概念 json是一种通用的数据类型 一般情况下接口返回的数据类型都是json 长得像字典,形式也是k-v{ } 其实json是字符串 字符串不能用key.value来取值,所以要先转换为 ...

  3. Java开发第一次面试经验(视频面试)

    坐标:山东潍坊公共实训基地 面试岗位:java开发实习生 我们班级一共6个人一起面试,1对1,其他人坐在旁边倾听,两个大牛,四个酱油,我应该是最黑的酱油啦. 面试问题: 1.请简短的做一下自我介绍: ...

  4. [CCPC-Wannafly & Comet OJ 夏季欢乐赛(2019)]飞行棋

    题目链接:https://www.cometoj.com/contest/59/problem/E?problem_id=2714 求期望并且一堆转移基本上就是期望dp了(叉腰 照常的设dp[i]表示 ...

  5. 编译驱动Makefile解析

    #ubuntu的内核源码树,如果要编译在ubuntu中安装的模块就打开这2个 #KERN_VER = $(shell uname -r) #KERN_DIR = /lib/modules/$(KERN ...

  6. require 和 import 详解

    前言 JS模块化编程是前端小伙伴们必不可少的知识,下面妹子将于自认为比较清晰的方式列举出来. 1 require 特点: 1.运行时加载 2.拷贝到本页面 3.全部引入 1.1 CommonJS No ...

  7. Linux终端复用工具tmux的使用和配置

    1. 会话管理 新建会话 $ tmux new -s session-one -d -s:指定回话名称 -d:会话在后台运行 查看所有会话 $ tmux ls session-one: 1 windo ...

  8. tcp 建立连接三次握手

    众所周知,tcp是安全的,可靠的,但是为什么呢.要理解这一点,首先先了解tcp的建立连接的原理. 三次握手 第一次握手:由客户端向服务器发送请求,SYN 表示请求连接,seq是序列号(随机选取). 第 ...

  9. WannaCry的UWP版,哈哈哈

  10. HTML文档流和脱离文档流

    文档流:也就是我们通常看到的由左到右.由上而下的元素排列形式,在网页中每个元素都是默认按照这个顺序进行排序和显示的. 脱离文档流:元素脱离文档流之后,将不再在文档流中占据空间,而是处于浮动状态(可以理 ...