自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 Linux 安装 Redis 测试时 You need tcl 8.5 or newer in order to run the Redis test 错误解决

  Linux 系统在安装 Redis 时需要进行编译和安装操作,其中编译操作完成后,需要进行 make test 测试,当我们进行测试的时候发生 You need tcl 8.5 or newer in order to run the Redis test 错误,信息如下:**解决方案:我们只需要安装 tcl 后,即可解决该问题。 **首先下载 tcl :下载网址:https:/...

2020-01-15 16:34:04 2605 1

原创 Linux 系统上 Redis 数据库的 安装 && 部署 && 使用

一、安装 Redis数据库step1、下载 Redis 数据库的安装包方案一:window 下载成功后,发送给 linux 服务器:https://redis.io/download方案二:通过 linux 系统的 wget 命令直接下载:# -P 参数代表是文件下载到指定路径wget -P ~/Downloads http://download.redis.io/rel...

2020-01-15 16:09:19 222

原创 虚拟环境搭建 virtualenvwrapper.sh 中 VIRTUALENVWRAPPER_PYTHON 路径错误解决

  我们在安装好 virtualenvwrapper 之后,通过 source 启动初始化工具 virtualenvwrapper.sh 时报错,报错信息如下:结合错误信息与提示找到的语句,猜测应该是 virtualenvwrapper.sh 文件的 VIRTUALENVWRAPPER_PYTHON 这里有问题:于是我们打开 virtualenvwrapper.sh 文件:virtual...

2020-01-15 11:04:23 1260

原创 虚拟环境的搭建 virtualenv 和 virtualenvwrapper

虚拟环境 virtual environment  它是一个虚拟化,从电脑上独立开辟出来的环境。通俗的来讲,虚拟环境就是借助虚拟机docker来把一部分内容独立出来,我们把这部分独立出来的东西称之为 容器,在这个容器中,我们可以只安装我们开发需要依赖的包,各个容器之间相互隔离,互不影响。为什么要搭建虚拟环境?  在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的...

2020-01-14 16:36:47 377

原创 MySQL数据库-----触发器的使用

触发器触发器是一个 特殊的存储过程。不同的是:执行存储过程要用 call语句调用,而触发器的执行不需要call语句的调用,也不需手工启动,只要当一个预定义的事件发生的时候,他就会被MySQL自动调用。例如数据表进行insert、delect 或update操作时。创建触发器创建语法格式如下:create trigger trigger_name trigger_time ...

2019-03-06 10:13:14 648

原创 MySQL数据库-----存储过程和存储函数 中的参数如何使用中文?

存储程序中的参数如何使用中文?一般情况下,可能会出现存储过程中掺入中文参数的情况。例如某个存储过程根据用户名称查找到该用户的信息,传入的参数可能是中文。这时需要在定义存储过程的时候,在传入参数后面加上 character set gbk,不然调用存储程序必然会出错。使用示例如下:create procedure xxxx (in name varchar(20) character ...

2019-03-04 10:46:45 839

原创 MySQL数据库-----流程控制的使用

流程控制的使用流程控制语句 用于根据条件 控制语句的执行。MySQL用于构造控制流程的语句有:if、case、loop、while、leave、iterate、repeat。if语句if条件判断,包含多个条件判断。语法格式如下:# if...elseif 条件 then 语句1; else 语句2;end if;# if...elseif...else...

2019-03-02 11:14:24 617

原创 MySQL数据库-----光标的声明、使用 和删除

光标的使用查询语句可能返回多条记录,如果数据非常大,需要在存储过程和存储函数中使用光标来逐条读取查询结果集 中的记录。光标必须在声明处理程序之前使用,并且变量和条件还必须在声明光标或者处理程序之前被声明。声明光标:declare 光标名称 cursor for select语句;返回一个用于创建光标的结果集。声明名称为 cursor_name的光标,select语句从stude...

2019-03-02 11:13:50 1634

原创 MySQL数据库-----定义条件和处理程序

定义条件和处理程序定义条件:是事先定义程序执行过程中可能遇到的问题。处理程序:对遇到的这些问题时应采取相应的处理方式,并且保证存储过程或函数在遇到警告或者错误的时候能继续执行。定义条件和处理程序 可以增强存储程序处理问题的能力,避免程序异常停止工作。定义条件declare…codition 语法格式:declare 条件名称 condition for [该参数表示条件的类型]...

2019-03-02 11:12:37 988

原创 MySQL数据库-----变量的定义 与赋值

变量的使用定义变量:declare 局部变量名称 变量类型 [default 变量的初始值]若没有定义初始值,则默认初始值的null。定义一个名为 name_id的局部变量,类型为int,初始值为100declare name_id int default 100;为变量赋值:set 变量名 = 数值或者表达式;示例:声明三个变量,类型为int,为三个变量赋值decla...

2019-03-02 11:11:48 2068

原创 MySQL数据库-----存储过程、存储函数 的创建、调用、查看、修改和删除(详解)

存储程序可以分为存储过程和存储函数。简单来说,存储过程就是一条或者多条SQL语句的集合,可视为批文件,但是起作用不仅限于批处理。使用call语句来调用存储过程,只能用输出变量返回值。函数可以从语句外调用(即通过引用函数名),也能返回标量值。存储过程可以调用其他存储过程创建存储过程create procedure 存储过程的名称 ([指定存储过程的参数列表]) [指定存储过程...

2019-03-01 14:49:23 4389

原创 MySQL数据库中的 视图、事务和索引操作

视图视图视图是一个虚拟表,从一个或者多个表中导出,视图的行为与表非常相似。在视图中可以使用select语句查询数据,以及使用insert、update和delect语句修改记录。视图操作、使用方便,而且可以保证数据库系统的安全(可以限制表中的机密数据)。视图一经定义遍储存在数据库中,与其相应的数据并没有像表那样在数据库中再储存一份,通过视图看到的数据只是存放在基本表中的数据。对视图的操作...

2019-02-28 21:52:28 353

原创 MySQL数据库中防止SQL注入、防止脱库

何为SQL注入?所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。如何防止SQL注入?通过对比来讲解如何防止SQL注入:非安全方式:# 非安全方式find_name = inpu...

2019-02-28 10:45:56 1410

原创 使用Python 访问、操作 MySQL数据库

操作流程导入pymysql模块创建connection对象获取cursor(游标)对象对数据库进行操作:执行查询、执行命令、获取数据、处理数据关闭cursor(游标)对象关闭connection结束详细流程介绍1、导入pymysql模块from pymysql import *2、创建connection对象用于建立数据库的链接创建对象:调用connect(参数列...

2019-02-27 22:53:31 537

原创 MySQL数据库-----外键约束的创建、删除

外键约束实际开发中很少使用外键约束,因为会极大的降低表更新的效率。添加外键约束:给 goods表中的 cate_id字段添加 goods_cates表中的 id字段 为外键约束。alter table goods add foreign key (cate_id) references goods_cates(id);取消外键约束:首先需要获取外键约束名称,该名称由系统自动生...

2019-02-26 22:58:07 552

原创 MySQL数据库-----多种查询方式详解(可收藏)

本文主要讲述了MySQL数据库的多种查询方式,且MySQL语句是需要记忆的,但是有随时忘记的可能,如果读者喜欢我的文章的话可以选择收藏该文章,在你忘记的时候可以随时查看!基本查询查询所有字段:select * from 表名;查询指定字段:方式一:select 列1, 列2,…… from 表名;方式二:select 表名.列1, 表名.列2,…… from 表名;使用...

2019-02-26 19:26:54 6130

原创 常用的MySQL操作语句、以及数据的增删改查

数据库的操作显示当前数据库版本:select version();显示当前数据库的时间:select now();查看所有数据库:show databases创建数据库:create database 数据库名 (charset=指定数据库编码方式);例如:create database text charset=utf8;(注意:中文编码是utf8而不...

2019-02-25 11:38:53 340

原创 Windows下使用DOS命令链接(关闭)MySQL数据库

Windows下使用DOS命令链接(关闭)MySQL数据库连接数据库对 mysql -h localhost -u root -p 的解释:-h表示服务器名,localhost表示 本地主机;-u为数据库用户名,root(超级管理员)是mysql 默认用户名;-p为密码:如果设置了密码,可直接在-p后链接输入,如:-p123456,密码为123456如果用户没有设置密码,显示En...

2019-02-24 21:14:49 2654

原创 MySQL数据库中的数据类型和约束

数据类型可以通过查看帮助文档查阅所有支持的数据类型使用数据类型的原则是:够用就行,尽量使用取值范围小的,而不用大的,这样可以更多的节省存储空间。常用数据类型如下:整数:int、bit小数:decimal字符串:varchar、char日期时间:date、time、datetime枚举类型(enum)(Python中没有)—>把可能出现的结果列出来,这就叫枚举特别说明...

2019-02-24 17:26:39 328

原创 MySQL在windows系统的安装(Installer)

下载与安装:MySQL官网:https://www.mysql.com/MySQL官网下载:https://dev.mysql.com/downloads/installer/MySQL官网提供Installer(安装)版和Archive(文档)版,两种类型的安装包。Installer安装包支持分别安装X86和X64两种系统位数的安装,而Archive版X86和X64需要分别下载安装。鉴于...

2019-02-23 21:20:53 598

原创 Python高级语法(二)-----深拷贝和浅拷贝

Python中的复制,深拷贝和浅拷贝Python是基于值的内存管理方式。在Python中,对象赋值实际上是对象的引用。当创建一个对象,然后把它赋值给另一个变量的时候,Python并没有拷贝这个对象,而只是拷贝了这个对象的引用,即共同指向一个地址。Python中的的复制有以下三种:(1)直接赋值:默认浅拷贝传递对象的引用而已,原始列表改变,被赋值的列表也会做相同改变。>...

2019-02-23 09:25:17 224

原创 Python高级语法(一)-----GIL(全局解释器锁)

GIL(全局解释器锁)Python语言和GIL没有半毛钱的关系,仅仅是由于历史原因在Cpython虚拟机(解释器),难以移除GIL。GIL:全局解释器锁,每个线程在执行过程都需要先获取GIL,保证同一时刻只有一个线程可以执行代码。线程释放GIL的情况:在IO操作等可能引起阻塞的system call之前,可以战胜释放GIL,但在执行完毕后,必须重新获取GIL Python 3.x使用计...

2019-02-22 21:28:00 128

原创 Python多任务(七)-----协程

Python中的协程协程是Python中特有的一种实现多任务的另外一种方式。学习Python中的协程首先需要了解和学习Python中的迭代器和生成器。迭代器和生成器两者均保证的是代码,而不是结果。迭代器迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有元素访问完结束。迭代器只能往前不能后退。优缺点:缺...

2019-02-16 14:27:40 134

原创 Python多任务(六)-----2种进程同步技术 Lock、Event 详解

进程同步技术在需要协同工作完成大型任务时,多个进程间同步非常重要。进程同步方法与线程同步方法类似,代码稍微修改一些即可。Lock对象互斥锁 Lock 对象 是比较低级的同步原语,当被锁定以后不属于特定的线程。一个锁有两种状态:locked 和 unlocked。acquire()方法:上锁操作如果锁处于 unlocked 状态,acquire()方法将其修改为 locked ...

2019-02-15 16:08:17 530

原创 Python多任务(五)-----4种进程间的通信(数据交换)Queue对象、管道Pipe、共享内存Value和Array、Manager对象 详解

进程间的通信(数据交换)现有2个进程A和B,他们都在内存中开辟了空间,那么我们在内存中再开辟一个空间C,作用是连接这两个进程的。对于进程来说内存空间是可以共享的(任何一个进程都可以使用内存,内存当中的空间是用地址来标记的,我们通过查找某一个地址就能找到这个内存)A进程可以不断的向C空间输送东西,B进程可以不断的从C空间读取东西,这就是进程间的通信。Queue对象对Queue的认识和理解...

2019-02-15 15:31:42 2149

原创 Python多任务(四)-----进程池Pool

Python中的进程池进程池Pool当需要创建的子进程数量不多,可以直接利用multiprocessing中的Process动态的生成多个进程。但如果是上百个甚至上千个目标,手动的去创建线程工作量很大,此时就可以用到multiprocessing模块提供的Pool方法。我们应该对实际的应用场景来判断是否使用进程池。初始化 Pool 时,可以指定一个最大的进程数,当有新的请求提交到Poo...

2019-02-15 11:33:57 601 1

原创 Python多任务(三)-----多进程

Python中的多进程进程的概念进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体。在当代面向线程设计的计算...

2019-02-15 11:33:15 194 1

原创 Python多任务(二)-----5种线程同步技术 Lock、RLock、Condition、Queue、Event详解

Python中线程同步技术Python中的 threading 模块提供了多种用于线程同步的对象:Lock 对象:互斥锁 Lock 对象 是比较低级的同步原语,当被锁定以后不属于特定的线程。一个锁有两种状态:locked 和 unlocked。acquire()方法:上锁操作如果锁处于 unlocked 状态,acquire()方法将其修改为 locked 状态并立即返回。...

2019-02-15 11:32:34 439

原创 Python多任务(一)-----多线程

Python中的多线程Python中的多任务多任务的实质:时间片轮转并发 和 并行 的区别并发:假的多任务并行:真的多任务线程一个程序运行起来之后一定有一个执行代码的东西。这个东西我们称之为线程。当创建Thread类的对象是不会创建子线程,而是在启动线程时完成创建。(即在调用start()函数后完成创建)如果创建Thread时执行的函数结束了,意味着该子线程结束…当...

2019-02-15 11:31:09 152

原创 Python3新增的Byte类型

Python3新增的Byte类型在python2中字节类型同字符类型区分不大,但是在python3中最重要的特性是对文本和二进制数据做了更加清晰的区分。文本总是Unicode,由字符类型表示,而二进制数据则由byte类型表示。python3不会以任意隐式方式混用字节型和字符型,也因此在python3中不能拼接字符串和字节包(python2中可以,会自动进行转换),也不能在字节包中...

2019-02-15 11:30:24 4310 1

原创 Python中UDP和TCP编程

Python中UDP和TCP编程UDP和TCP区别:TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接。TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付。TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的, 且UDP没有拥塞控制,因此...

2019-02-15 11:23:48 498

空空如也

空空如也

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

TA关注的人

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