work

MySQL事务,这篇文章就够了

风格不统一 提交于 2019-11-28 18:56:59
原文链接:https://blog.ouyangsihai.cn/ >> MySQL事务,这篇文章就够了 在看这篇文章之前,我们回顾一下前面的几篇关于MySQL的系列文章,应该对你读下面的文章有所帮助。 InnoDB与MyISAM等存储引擎对比 面试官问你B树和B 树,就把这篇文章丢给他 MySQL的B 树索引的概念、使用、优化及使用场景 MySQL全文索引最强教程 MySQL的又一神器-锁,MySQL面试必备 0 什么是事务 事务(Transaction) 是并发控制的基本单位。所谓的事务,它是一个操作序列,这些操作要么都 执行,要么都不执行,它是一个不可分割的工作单位。事务是数据库维护数据一致性的单位,在每 个事务结束时,都能保持数据一致性。 同时,事务有着严格的地定义,必须满足四个特性,也就是我们一直说的ACID,但是,并不是说各种数据库就一定会满足四个特性,对于不同的数据库的实现来说,在不同程度上是不一定完全满足要求的,比如,Oracle数据库来说,默认的事务隔离级别是 READ COMMITTED ,是不满足隔离性的要求的。 下面我们趁热打铁,介绍一下事务的必知必会的四大特性,这几个特性也是在面试中,面试官面试MySQL的相关知识的时候,问的比较多的问题,所以,这几个特性务必需要理解并且透彻的记在心里,开个玩笑,被火车撞了,也不应该忘记这四个特性! 1 事务的四大特性

How do negative margins in CSS work and why is (margin-top:-5 != margin-bottom:5)?

烈酒焚心 提交于 2019-11-28 17:38:13
How do negative margins in CSS work and why is (margin-top:-5 != margin-bottom:5)? 解答 Negative margins are valid in css and understanding their (compliant) behaviour is mainly based on the box model and margin collapsing. While certain scenarios are more complex, a lot of common mistakes can be avoided after studying the spec. For instance, rendering of your sample code is guided by the css spec as described in calculating heights and margins for absolutely positioned non-replaced elements . If I were to make a graphical representation, I'd probably go with something like this (not to scale):

【Python与线程】

北城以北 提交于 2019-11-28 14:55:31
原文: http://blog.gqylpy.com/gqy/232 目录 一、全局解释器锁GIL 二、Python线程模块的选择 三、线程的创建 三、锁机制 四、信号量 五、事件 六、条件 七、定时器 八、线程队列 九、线程池 补充:线程安全 import threading obj = threading.local()# local():可实现,多线程操作某一数据,不会出现数据混乱的情况# 原理:空间换时间 def add(i): obj.n = i print(i, obj.n, threading.current_thread().ident) for i in range(20): th = threading.Thread(target=add, args=(i,)) th.start() 一、全局解释器锁GIL Python代码的执行由Python虚拟机(也叫解释器主循环)来控制。Python在设计之初就考虑到要在主循环中同时只有一个线程在执行。虽然Python解释器中可以“运行”多个线程,但在任意时刻只有一个线程在解释器中运行. 对于Python虚拟机的访问由全局解释器锁(GIL)来控制,正是这个锁保证了同一时刻只有一个线程在运行. 同一时间点,GIL只允许同一个进程中的一个线程访问cpu,即CPython解释器中没有真正的线程并行,只有进程可以实现。故I

mysql清空表数据并重置自增ID

ぃ、小莉子 提交于 2019-11-28 11:36:43
mysql清空表数据并重置自增ID: ## 查看 mysql> select * from work_order_company; mysql> show create table work_order_company; ## 清除 mysql> delete from work_order_company; mysql> alter table work_order_company auto_increment=1; ## 此时可再次查看,自增状态无显示从1开始 mysql> show create table work_order_company; 来源: https://www.cnblogs.com/immense/p/11406758.html

zeppelin on CDH及配置spark查询hive表

守給你的承諾、 提交于 2019-11-28 07:51:18
2019独角兽企业重金招聘Python工程师标准>>> 1.下载zeppelin http://zeppelin.apache.org/download.html 我下载的是796MB的那个已经编译好的,如果需要自己按照环境编译也可以,但是要很长时间编译,这个版本包含了很多插件,我虽然是CDH环境但是这个也可以使用。 2.修改配置文件 cd /zeppelin-0.7.3-bin-all/conf cp zeppelin-env.sh.template zeppelin-env.sh cp zeppelin-site.xml.template zeppelin-site.xml vim zeppelin-env.sh 添加配置如下:我的是spark2用不了spark1.6版本这个版本的zeppelin export HIVE_HOME=/opt/cloudera/parcels/CDH-5.9.0-1.cdh5.9.0.p0.23/lib/hive export JAVA_HOME=/usr/java/jdk1.8.0_121 export MASTER=yarn-client export ZEPPELIN_JAVA_OPTS="-Dmaster=yarn-client -Dspark.yarn.jar=/home/zeppelin-0.7.3-bin-all

【Python与线程】

偶尔善良 提交于 2019-11-28 07:39:46
原文: http://blog.gqylpy.com/gqy/232 目录 一、全局解释器锁GIL 二、Python线程模块的选择 三、线程的创建 三、锁机制 四、信号量 五、事件 六、条件 七、定时器 八、线程队列 九、线程池 补充:线程安全 import threading obj = threading.local()# local():可实现,多线程操作某一数据,不会出现数据混乱的情况# 原理:空间换时间 def add(i): obj.n = i print(i, obj.n, threading.current_thread().ident) for i in range(20): th = threading.Thread(target=add, args=(i,)) th.start() 一、全局解释器锁GIL Python代码的执行由Python虚拟机(也叫解释器主循环)来控制。Python在设计之初就考虑到要在主循环中同时只有一个线程在执行。虽然Python解释器中可以“运行”多个线程,但在任意时刻只有一个线程在解释器中运行. 对于Python虚拟机的访问由全局解释器锁(GIL)来控制,正是这个锁保证了同一时刻只有一个线程在运行. 同一时间点,GIL只允许同一个进程中的一个线程访问cpu,即CPython解释器中没有真正的线程并行,只有进程可以实现。故I

go语言练习

拟墨画扇 提交于 2019-11-28 06:19:46
1 // main 2 package main 3 4 import ( 5 "fmt" 6 "runtime" 7 "sync" 8 ) 9 10 func main() { 11 fmt.Println("Hello World!") 12 runtime.GOMAXPROCS(1) 13 var wg sync.WaitGroup 14 wg.Add(2) 15 i := 999 16 fmt.Println("Start Goroutines") 17 18 go func() { 19 defer wg.Done() 20 //共享变量 i wg 21 fmt.Println(i) 22 for count := 0; count < 3; count++ { 23 for char := 'a'; char < 'a'+26; char++ { 24 fmt.Printf("%c ", char) 25 } 26 } 27 }() 28 29 go func() { 30 defer wg.Done() 31 fmt.Println(i) 32 for count := 0; count < 3; count++ { 33 for char := 'A'; char < 'A'+26; char++ { 34 fmt.Printf("%c ", char) 35 }

WinDbg的工作空间---Work Space

和自甴很熟 提交于 2019-11-28 04:58:46
一、什么是工作空间 Windbg把和调试相关的所有配置称为 workspace 。 WinDbg使用工作空间来描述和存储调试项目的属性、参数及调试器设置等信息。工作空间与vc中的项目文件很相似。退出windbg时,它会将会话配置保存在工作区中。工作区使您能够轻松地保留从一个会话到另一个会话的设置。您还可以手动保存或清除工作区,甚至可以使用工作区保存仍在进行中的调试会话。 二、工作空间保存的信息 WinDbg的工作空间中保存了一下信息: 调试会话状态:包括,断点、打开的源文件、用户自定义别名。 调试器设置:包括符号文件路径,可执行映像文件路径,源文件路径,用I+/I-命令设置的源文件选项,日志文件设置,通过启动内核调试对话框设置内核调试连接设置,最近一次打开文件对话框所使用的路径和输出设置等 WinDbg图形界面信息:包括WinDbg窗口标题、默认字体、是否自动打开反汇编窗口、窗口在桌面的位置、打开的子窗口、以及每个子窗口的状态等。 当您使用windbg作为调试客户机时,它的工作区只保存您通过图形界面设置的值。不会保存通过调试器命令窗口所做的更改。(此限制保证只反映本地客户端所做的更改,因为调试器命令窗口接受来自所有客户端和调试服务器的输入。 此外,断点信息保存在工作区中,包括断点地址和状态。会话结束时处于活动状态的断点在下一个会话启动时处于活动状态。但是,如果尚未加载适当的模块

4.并发编程多线程

会有一股神秘感。 提交于 2019-11-28 02:40:22
并发编程之多线程(理论) 一 threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 官网链接:https://docs.python.org/3/library/threading.html?highlight=threading# 二 开启线程的两种方式 #方式一 from threading import Thread import time def sayhi(name): time.sleep(2) print('%s say hello' %name) if __name__ == '__main__': t=Thread(target=sayhi,args=('太白',)) t.start() print('主线程') 方式一 #方式二 from threading import Thread import time class Sayhi(Thread): def __init__(self,name): super().__init__() self.name=name def run(self): time.sleep(2) print('%s say hello' % self.name) if __name__ == '__main__': t = Sayhi(

aptana3 汉化

只愿长相守 提交于 2019-11-27 22:32:41
点击Help-install new software,在work with输入 http://download.eclipse.org/technology/babel/update-site/R0.9.1/helios这个汉化地址,然后点Add输入名称,比如:Chinese,然后勾上下面的选择框prepend,加载完毕,选择simple chinese即可,最后就是下一步,重启,汉化成功 转载于:https://www.cnblogs.com/jivinliu/archive/2012/01/12/2320173.html 来源: https://blog.csdn.net/weixin_30367169/article/details/99779520