最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python django使用多進(jìn)程連接mysql錯誤的解決方法

 更新時間:2018年10月08日 08:59:51   作者:orangleliu  
這篇文章主要介紹了Python django使用多進(jìn)程連接mysql錯誤的解決方法,詳細(xì)的介紹了解決方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

問題

mysql 查詢出現(xiàn)錯誤

error: (2014, "Commands out of sync; you can't run this command now")1

查詢

mysql文檔中的解釋

  If you get Commands out of sync; you can't run this command now in your client code, you are calling client functions in the wrong order.
  This can happen, for example, if you are using mysql_use_result() and try to execute a new query before you have called mysql_free_result(). It can also happen if you try to execute two queries that return data without calling mysql_use_result() or mysql_store_result() in between.

調(diào)用順序錯誤,同一個連接,發(fā)出2個查詢請求,第一個請求發(fā)出之后沒有等到mysql返回就發(fā)出第二個請求

背景 思考

我這里的程序是這樣的,在django框架中起了一個定時任務(wù),這個任務(wù)中有個循環(huán),主線程循環(huán)查詢mysql然后在循環(huán)體中生成了子進(jìn)程,子進(jìn)程中也有mysql查詢。

我測試了下不實用多進(jìn)程的情況沒有問題,使用多進(jìn)程就會出現(xiàn)這個問題。

對照上面的文檔,其實不難想到,錯誤應(yīng)該是這樣的

  1. 父進(jìn)程和mysql建立的連接A,循環(huán)中fork出一個子進(jìn)程
  2. 子進(jìn)程保持了父進(jìn)程的變量,也就是擁有mysql連接A
  3. 子進(jìn)程去用連接A查詢mysql,父進(jìn)程這個時候也并發(fā)的使用連接A訪問mysql
  4. 這樣很容易出現(xiàn)了上面Mysql提到的情況,結(jié)果就報錯了

 

解決

解決的方案其實很容易想到,就是當(dāng)我們fork一個進(jìn)程之后,讓他從新獲取一個和mysql的連接C或者D就好了嘛,
結(jié)果幾個測試,得到如下的方案。

在父進(jìn)程的loop中,創(chuàng)建子進(jìn)程之前關(guān)閉mysql連接,這樣子進(jìn)程中就會重新連接mysql。

  from django import db
  db.close_connection()
  p = Process(target=ap5mintes_scan, args=(ac, details, mtime))
  p.start()

其實就是狀態(tài)copy的問題,本來多個線程同時并發(fā)調(diào)用一個connection也不對.

后面做了個測試 ,多進(jìn)程的情況下查看mysql processlist,的確使用建立多個mysql 連接。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python撲克牌21點游戲?qū)嵗a

    Python撲克牌21點游戲?qū)嵗a

    大家好,本篇文章主要講的是Python撲克牌21點游戲?qū)嵗a,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Pandas爆炸函數(shù)的使用技巧

    Pandas爆炸函數(shù)的使用技巧

    同事舉了個簡單的例子來說明爆炸函數(shù)的功能,我當(dāng)場就記下了這個函數(shù)名稱:爆炸函數(shù)。Hive在我的工作中使用的并不多,于是我在想:Pandas能夠?qū)崿F(xiàn)這個功能嗎?本文就來了解一下
    2021-05-05
  • python將控制臺輸出保存至文件的方法

    python將控制臺輸出保存至文件的方法

    今天小編就為大家分享一篇python將控制臺輸出保存至文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python 制作網(wǎng)站小說下載器

    python 制作網(wǎng)站小說下載器

    這篇文章主要介紹了python 如何制作網(wǎng)站小說下載器,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-02-02
  • Python數(shù)據(jù)類型之Number數(shù)字操作實例詳解

    Python數(shù)據(jù)類型之Number數(shù)字操作實例詳解

    這篇文章主要介紹了Python數(shù)據(jù)類型之Number數(shù)字操作,結(jié)合實例形式詳細(xì)分析了Python數(shù)字類型的概念、功能、分類及常用數(shù)學(xué)函數(shù)相關(guān)使用技巧,需要的朋友可以參考下
    2019-05-05
  • Python中用于返回絕對值的abs()方法

    Python中用于返回絕對值的abs()方法

    這篇文章主要介紹了Python中用于返回絕對值的abs()方法,是Python入門中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • 利用python進(jìn)行矩陣運算實例代碼

    利用python進(jìn)行矩陣運算實例代碼

    這篇文章主要給大家介紹了關(guān)于如何利用python進(jìn)行矩陣運算的相關(guān)資料,Numpy是Python編程語言中的一個核心庫,專門用于處理多維數(shù)據(jù)和矩陣運算,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-12-12
  • 使用XML庫的方式,實現(xiàn)RPC通信的方法(推薦)

    使用XML庫的方式,實現(xiàn)RPC通信的方法(推薦)

    下面小編就為大家?guī)硪黄褂肵ML庫的方式,實現(xiàn)RPC通信的方法(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • 為什么選擇python編程語言入門黑客攻防 給你幾個理由!

    為什么選擇python編程語言入門黑客攻防 給你幾個理由!

    為什么選擇python編程語言入門黑客攻防,小編今天給你幾個理由!Python語言的優(yōu)點、Python黑客攻擊優(yōu)點,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • 三行代碼使用Python將視頻轉(zhuǎn)Gif的方法示例

    三行代碼使用Python將視頻轉(zhuǎn)Gif的方法示例

    本文主要介紹了三行代碼使用Python將視頻轉(zhuǎn)Gif的方法示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10

最新評論

南乐县| 玉屏| 万山特区| 青铜峡市| 阿城市| 博野县| 新津县| 雷波县| 思南县| 丘北县| 深圳市| 建瓯市| 银川市| 丘北县| 墨玉县| 巴楚县| 同心县| 新营市| 永川市| 凤阳县| 娱乐| 宿迁市| 噶尔县| 石首市| 钟山县| 逊克县| 广昌县| 唐河县| 郸城县| 连江县| 建湖县| 五寨县| 综艺| 井研县| 西藏| 应城市| 汽车| 监利县| 柳林县| 鄂尔多斯市| 天祝|