自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

S1unday的博客

一个小白

  • 博客(61)
  • 问答 (2)
  • 收藏
  • 关注

原创 记一次 FLask + docker +Gunicorn + gevent 部署服务遇见的问题

在使用FLask + docker +Gunicorn + gevent部署服务的时候, 在请求服务的时候, 发现子 worker 一直子重启, 解决后在此记录一下.报错信息如下[2021-04-16 10:24:51 +0000] [1] [WARNING] Worker with pid 10 was terminated due to signal 11[2021-04-16 10:24:51 +0000] [19] [INFO] Worker exiting (pid: 19)/usr/li

2021-04-17 09:20:03 5002 2

原创 Python __missing__ 魔法方法

首先从使用一个字典开始, 当以d[key] 方式取出一个不存在的值的时候, 会抛出 KeyError 的异常d = {'a': 1, 'b': 2, 'c': 3}print(d['a'])print(d['f'])# >>>>>>>>>>1Traceback (most recent call last): File "D:/workspace/example-code/03-dict-set/test.py", line .

2020-10-05 16:12:15 1691

原创 MySQL day9(Explain)

Explain 详解Explain 作用查看表的读取顺序数据读取操作的操作类型查看哪些索引可使用查看使用使用的索引查看表之间的引用查看每张表有多少行被优化器执行Explain 使用方法Explain + sqle.g. Explain select * from test; mysql> explain select * from test;+----+-------------+------------+------------+------+--------

2020-09-23 21:29:52 193

原创 MySQL 学习,day 8(三范式, 设计表准则)

借鉴了很多网上大佬的博客, 侵必删MySQL 三范式列不可拆分同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。第二范式要有主键,要求其他字段都依赖于主键为实现区分通常需要为表加上一个列(主键),以存储各个实例的惟一标识。要求实体的属性完全依赖于主关键字。不能部分依赖。保证每列都和主键直接相关一个数据库表中不包含已在其它表中已包含的非主关键

2020-09-16 22:15:05 124

原创 MySQL学习day7(sql执行顺序,使用索引原则, 避免全局扫描)

在学习过程中借鉴很多大佬的博客, 感谢他们. 侵必删MySQL 架构​ (1)MySQL向外提供的交互接口(Connectors)​ (2)管理服务组件和工具组件(Management Service & Utilities)​ (3)连接池组件(Connection Pool)​ (4)SQL接口组件(SQL Interface)​ (5)查询分析器组件(Parser)​ (6)优化器组件(Optimizer)​ (7)缓存主件

2020-09-14 20:34:54 236 2

原创 MySQL day6(慢查询日志, explain)

开启慢日志查询查询是否已开启慢查询日志mysql> show variables like 'slow%';+---------------------+--------------------------------------+| Variable_name | Value |+---------------------+--------------------------------------+| s..

2020-09-02 22:12:33 94

原创 MySQL day5(引擎, 索引, 索引失效)

1、MySQL存储引擎MySQL 存储引擎介绍(常用 InnoDB, MyISAM):(1)、InnoDB 存储引擎 InnoDB 是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键,InnoDB 是默认的 MySQL引擎。 (2)、MyISAM 存储引擎 MyISAM 基于 ISAM 存储引擎,并对其进行扩展。它是在 Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM 拥有较高的插入、查询速度,但不支持事物。 (3)、MEMORY 存储引擎

2020-08-31 21:25:06 134

原创 MySQL 学习 Day4(事务, 修改引擎, 自动提交)

注意: 使用事务, 必须选择引擎为 Innodb, myisam是没有事务的MySQL 事务什么是事务事务(Transaction)是访问和更新数据库的程序执行单元;事务中可能包含一个或多个sql语句,这些语句要么都执行,要么都不执行事务特性原子性事务必须是原子工作单元,一个事务中的所有语句,应该做到:要么全做,要么一个都不做;一致性在事务开始之前和事务结束以后,数据库的完整性没有被破坏。这表示写入的资料必须完全符合所有的预设规则,这包含资料的精确度、串联

2020-08-20 21:03:39 131

原创 MySQL day3(数据库表权限设置)

库表权限授权与回收1, 创建一个名为 testuser , 密码为 ‘123456’ 的用户, 可以在任何地方登陆CREATE user 'testuser'@'%' IDENTIFIED by '123456';# 查看数据库mysql> show databases;+--------------------+| Database |+--------------------+| information_schema |+-------------------

2020-08-17 22:49:29 292

原创 MySQL day2(创建登录用户, 限制登陆ip,ip段, 忘记密码)

MySQL 数据库权限控制查看用户列表select user from mysql.user;+---------------+| user |+---------------+| root || mysql.session || mysql.sys || root |+---------------+查看用户可以在哪一台设备上登陆select user, host from mysql.user;+-----

2020-08-16 21:12:19 189

原创 MySQL 学习 day1

1, MySQL 简介mysql是一个开源的关系型数据库管理系统,现在是oracle公司旗下的一款产品,由C和C++语言编写,可移植性高。支持在多种操作系统上安装,最常见有AIX,linux,window。mysql因为开源免费,所以受到了目前互联网行业的欢迎以mysql作为数据库,linux系统作为操作系统,apache或者nginx作为web服务器,perl/php/python作为服务端的脚本解释器,就可以搭建起一个免费的网站。被业界称为LNMP或者LAMP2, MySQL sq

2020-08-11 22:26:01 121

原创 python日志系统

先贴上代码import logging# 获取 logging 对象logger = logging.getLogger(__name__)# 增加一个headerheader = logging.FileHandler('./demo.log')# 格式化方式logger_format = logging.Formatter('%(asctime)s %(created)f %(filename)s %(funcName)s %(levelname)s %(levelno)s %(li.

2020-06-28 18:04:43 210

原创 python 部分魔法方法整理

Python 魔法方法__doc__函数的文档字符串, 没有为 None; 不会被子类继承__name__函数的名称__qualname__该函数的 qualified name__module__该函数所属模块的名称,没有则为 None__defaults__由具有默认值的参数的默认参数值组成的元组,如无任何参数具有默认值则为 None...

2020-04-28 14:54:05 157

原创 Flask 1.0x 方法, 变量汇总(包括蓝图)。 持续更新~~~~~~~~~

Flask 类初始化参数import_name: 应用程序包的名称static_url_path: 可用于为Web上的静态文件指定其他路径。默认为static_folder文件夹的名称。static_folder: 访问static_url_path提供的静态文件的文件夹的路由。默认为'static' 应用程序根路径中的文件夹static_host: 添加静态路由时要使用的主机。...

2020-04-24 14:38:42 315

原创 flask-sqlalchemy使用上下文管理器更优雅的commit

在我们使用 flask-sqlalchemy 的时候, 在提交事务的时候, 都需要 commit:try: user = User() .... db.session.commit()except: db.session.rollback()现在可以使用更优雅的方式去做这件事:from flask_sqlalchemy import SQLAlchemy as _SQLAlche...

2020-03-29 13:34:52 1089

原创 python使用@contextmanager来定义上下文管理器

python 上下文管理器上下文管理器是在Python2.5之后加入的功能,可以在方便的需要的时候比较精确地分配和释放资源, with便是上下文管理器的最广泛的应用; 比使用try:…finally:f.close方便的多.with open("test/test.txt","w") as f: f.write("hello")上下文管理协议:实现了__enter__和__ex...

2020-03-29 13:26:16 225

原创 flask_sqlachemy封装增删改方法

import enumfrom flask import Flaskfrom flask_sqlalchemy import SQLAlchemyapp = Flask(__name__)app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+pymysql://root:[email protected]:3306/tests"app.confi...

2019-11-11 18:28:25 357

原创 ubuntu python3.5 升级python3.7后终端打不开的问题(已解决)

今天因为和公司其他大佬环境冲突的问题, 将ubuntu自带的python3.5 升级为3.7,并且换了软连接。python 连接为python3.7,发生了终端打不开的问题。解决方法如下:1.Ctrl + Alt + f12.打开/usr/bin/gnome-terminal 将首行的 #!/usr/bin/python3 修改为 #!/usr/bin/python3.53.cd /us...

2019-11-09 15:06:06 2718 3

原创 python json.loads() json转字典 保持顺序不变

今天在开发中, 需要读取本地的 Json 数据, 转化成字典,然后进行数据的处理。必须保证字典中的顺序 和 Json 的顺序一样, 不能改变import jsonfrom collections import OrderedDict # 将json格式字符串输出原有顺序json.loads(str,object_pairs_hook=OrderedDict)...

2019-11-08 15:07:16 4457

原创 Flask数据库多对多演练

需求:学生表和课程表一个学生可以选择多门课程一门课程可以被多个学生选择所以是多对多的关系学生表:id (主键)name课程表:id(主键)name关联表:学生表.id (主键)课程表.id(主键)定义表模型tb_student_course = db.Table('tb_student_course', ...

2019-11-05 22:29:54 94

原创 无法打开内核设备“\\.\Global\vmx86”: 系统找不到指定的文件。是否在安装 VMware Workstation 后重新引导

解决办法:点击“开始→运行”,在运行框中输入 CMD 回车打开命令提示符,然后依次执行以下命令。(win+R, 输入cmd)net start vmcinet start vmx86net start VMnetuserifsc config vmci=autosc config vmx86=autosc config VMnetuserif=auto重启电脑即可....

2019-10-08 09:01:40 542

原创 Win10,Ubuntu双系统,删除Ubuntu系统, 出现 error: no such parttition

解决办法

2019-10-07 10:45:07 308

原创 ubuntu 安装 pip3 报错 python3-pip : 依赖: python-pip-whl (= 8.1.1-2ubuntu0.4) 但是 9.0.1-2.3~ubuntu1.(已解决)

当我在ubuntu 16.04 安装pip3的时候发生以下错误:Reading package lists... DoneBuilding dependency tree Reading state information... DoneSome packages could not be installed. This may mean that you havereque...

2019-10-06 10:43:39 10105 4

原创 Django DRF 自定义捕获数据库和Redis错误

在 DRF 框架中, 给我们自动捕获了视图异常,但是一些数据库异常却没有处理,我们需要自己处理:from rest_framework.views import exception_handler as drf_exception_handlerimport loggingfrom django.db import DatabaseErrorfrom redis.exceptions im...

2019-09-02 16:24:58 345

原创 matplotlib中文显示乱码问题解决

在使用 matplotlib 画图的时候可能会有中文显示乱码的问题,提供两种解决方式:第一种:# 在代码中加入以下两行plt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=False第二种下载中文字体(黑体,看准系统版本)下载 arial unicode ms 字体到 /h...

2019-08-17 16:41:21 1054

原创 flask 实用 nginx 反向代理 得到ip全部为127.0.0.1获取真实ip

在我们实用 NGINX 反向代理的时候, 再有需求获取用户 ip 的时候,会发现获取的ip都是127.0.0.1.这是因为,我们在实用 nginx 反向代理的时候,传过来的ip都为本地ip.解决办法如下在 nginx 中添加如下配置:server { listen 9628; server_name localhost; ...

2019-08-02 15:32:47 2991

转载 Python3 sqlacodegen 根据已有数据库生成 ORM 使用的 model.py

2019独角兽企业重金招聘Python工程师标准>>> ...

2019-07-29 14:39:50 849

转载 MySQL 8.0+版本 修改root密码

敲入mysql -u root -p命令然后回车,当需要输入密码时,直接按enter键,便可以不用密码登录到数据库当中4. 修改root密码问题出现了!网上铺天盖地的重置密码的方式报错:set password for 'root'@'localhost'=password('123');如下图,无论改大写还是小写,都会报语法错误ERROR 1064 (42000)...

2019-07-29 14:33:43 1317

原创 python 安装虚拟环境出现错误 Error while finding module specification for 'virtualenvwrapper.hook_loader'

错误如下:/usr/local/bin/python3: Error while finding module specification for 'virtualenvwrapper.hook_loader' (ModuleNotFoundError: No module named 'virtualenvwrapper')virtualenvwrapper.sh: There was ...

2019-07-28 16:27:55 12354 12

转载 Mac终端iTerm2出现session ended

Mac终端iTerm2出现session ended这篇文章,解决了系统自带终端的登录访问问题。注意,Users下的文件夹权限不能通过终端直接sudo来提升当前用户的读写权限,很容易造成shell不能使用。原以为解决了自带终端的问题就可以欢快的再次修改权限了~然鹅,今天用iTerm2的时候,界面闪退,并给出了下面的提示提示通过上面的内容提示可以明白,说明当前会话被终结了,很郁闷,明明...

2019-07-26 16:36:21 1772

转载 mac 终端 sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set

在修改/usr权限时,导致在使用$ sudo命令时,提示如下错误:sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set解决方案:系统偏好设置 -> 用户与群组 -> 登录选项网络账户服务器: 点击 “加入” 按钮1.png打开目录实...

2019-07-26 16:32:08 2217

原创 制作一个pyhton2.7 ubuntu 镜像,书写Dockerfile运行一个web程序

运用ubuntu镜像运行一个容器docker run -it -d --name=python3.6demo ubuntu返回一个id65a616b14344fe6691f5198a68c35899fca02761e554787d6014e022349e9c2e进入docker终端docker exec -it 65a bash更新源apt-get update...

2019-07-24 14:35:50 630

原创 docker镜像操作

列出镜像列表命令docker images获取一个新的镜像命令docker pull + 镜像名查找镜像命令docker search + 名称创建镜像创建镜像的两种方式:从已经创建的容器中更新镜像, 并且提交镜像使用 Dockerfile 指令来创建一个新的镜像更新镜像需要使用容器创建一个容器docker run -t -i ubunt...

2019-07-23 16:42:25 136

转载 mac使用sz和rz 远程上传下载lrzsz

传送门

2019-07-19 17:59:44 924

翻译 python flask框架搭建和基本配置

Flask框架基本配置配置文件:import loggingfrom redis import StrictRedisclass Config(object): """项目的配置""" SECRET_KEY = "iECgbYWReMNxkRprrzMo5KAQYnb2UeZ3bwvReTSt+VSESW0OB8zbglT+6rEcDW9X" # 为数据库添...

2019-07-16 13:57:42 435

转载 python requests模块使用 进行重试(retrying模块)

requests 重试话不多说,贴代码import requestsfrom retrying import retryheaders = {}@retry(stop_max_attempt_number=3) # 最大重试3次,3次全部报错,才会报错def _parse_url(url): print(url) response = requests.get(...

2019-07-12 15:23:45 2002

原创 生产者消费者模式

生产者消费者模式的说明为什么要使用生产者和消费者模式       在线程世界里,生产者就是生产数据的线程,消费者就是消费数据的线程。在多线程开发当中,如果生产者处理速度很快,而消费者处理速度很慢,那么生产者就必须等待消费者处理完,才能继续生产数据。同样的道理,如果消费者的处理能力大于生产者,那么消费者就必须等待生产者。为了解...

2019-05-09 15:42:33 129

转载 mysql 连接出现 ’cryptography is required for sha256_password or caching_sha2_password‘ (已解决)

在使用Python和mysql进行交互的时候,出现以下错误,而终端连接数据正常:cryptography is required for sha256_password or caching_sha2_password经过大佬博客的讲解终于解决问题。解决方法请点击...

2019-04-17 09:51:11 10723

原创 解决python2虚拟环境中MySQL-Python安装失败问题

本人在python2.7环境中安装MySQL-Python得时候报了以下错误:_mysql.c:44:10: fatal error: 'my_config.h' file not found #include "my_config.h" ^~~~~~~~~~~~~ 1 error generated. error: command 'cc' f...

2019-04-09 10:42:28 753

原创 解决Git err:gpg failed to sign the data; fatal:failed to write commit object

解决Git err:gpg failed to sign the data; fatal:failed to write commit object如下图所示:解决方法git config commit.gpgsign false;

2019-04-02 16:49:28 2302

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除