{ "info": { "author": "Lucifer Jack", "author_email": "lujunxucuc@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Database :: Database Engines/Servers" ], "description": "PyMysqlPool\n==================\n\n.. image:: https://api.travis-ci.org/LuciferJack/python-mysql-pool.svg?branch=master\n :target: https://travis-ci.org/LuciferJack/python-mysql-pool\n.. image:: https://img.shields.io/badge/license-MIT-blue.svg\n :target: https://github.com/LuciferJack/python-mysql-pool/blob/master/LICENSE.txt\n\n.. contents:: Table of Contents\n\nDesc\n-------------\npython practical mysql pool desc:\nThis package contains a pure-python mysql connector library. The goal of PyMysqlPool\nis to be a mysql pool and motivation from=>[lost connection to MySQL server during query] base on mysql-connector .\n\nfeature\n * easy to use.\n * support \u3010no\u3001fixed \u3001dynamic pool\u3011.\n * manage \u3010fail/lost connection\u3011.\n * support \u3010no\u3001fixed \u3001dynamic pool\u3011=>Django framework.\n * support \u3010no\u3001fixed \u3001dynamic pool\u3011=>Flask framework.\n\nRequirements\n-------------\n* Python lib -- one of the following:\n MySQLdb\n* Python -- one of the following:\n success test in python >=2.7\n* MySQL Server -- one of the following:\n MySQL >= 5.5 (success test with >=5.5~)\n\n\nInstallation\n------------\n\nThe last stable release is available on PyPI and can be installed with ``pip``::\n\n $ pip install PyMysqlPool\n\nYou can installed with ``easy_install``::\n\n $ easy_install PyMysqlPool\n\nYou can installed with ``manually``::\n\n $ git clone https://github.com/LuciferJack/python-mysql-pool.git or download ***.tar.gz\n\n $ cd PyMysqlPool-***\n\n $ python setup.py install\n\nDocumentation\n-------------\n\nDocumentation is available online: http://PyMysqlPool.readthedocs.io/\n\nFor support, please refer to the `StackOverflow\n`_.\n\nExample\n-------\n\n.. _prototype:\n\nThe following prototype_ pool examples below:\n\n\n.. code:: python\n\n step:1\n\n \"\"\"\n file: new a mysql_config.py file and change to your db config\n \"\"\"\n db_config = {\n 'local': {\n 'host': \"10.95.130.***\", 'port': 8899,\n 'user': \"root\", 'passwd': \"****\",\n 'db': \"marry\", 'charset': \"utf8\",\n 'pool': {\n #use = 0 no pool else use pool\n \"use\":1,\n # size is >=0, 0 is dynamic pool\n \"size\":0,\n #pool name\n \"name\":\"local\",\n }\n },\n 'poi': {\n 'host': \"10.95.130.***\", 'port': 8787,\n 'user': \"lujunxu\", 'passwd': \"****\",\n 'db': \"poi_relation\", 'charset': \"utf8\",\n 'pool': {\n #use = 0 no pool else use pool\n \"use\":0,\n # size is >=0, 0 is dynamic pool\n \"size\":0,\n #pool name\n \"name\":\"poi\",\n }\n },\n }\n\n step:2\n\n \"\"\"\n Note:create your own table\n \"\"\"\n\n step:3 (example show below)\n\n from PyMysqlPool.db_util.mysql_util import query,query_single,insertOrUpdate,\n\n \"\"\"\n pool size special operation\n \"\"\"\n def query_pool_size():\n job_status = 2\n _sql = \"select * from master_job_list j where j.job_status in (%s) \"\n _args = (job_status,)\n task = query(db_config['local'], _sql,_args)\n logging.info(\"query_npool method query_npool result is %s ,input _data is %s \", task , _args)\n return\n\n \"\"\"\n single query\n \"\"\"\n def query_npool():\n job_status = 2\n _sql = \"select * from master_job_list j where j.job_status !=%s \"\n _args = (job_status,)\n task = query_single(db_config['local'], _sql,_args)\n logging.info(\"query_npool method query_npool result is %s ,input _data is %s \", task , _args)\n return\n\n \"\"\"\n insert\n \"\"\"\n def insert(nlp_rank_id,hit_query_word):\n #add more args\n _args = (nlp_rank_id,hit_query_word)\n _sql = \"\"\"INSERT INTO nlp_rank_poi_online (nlp_rank_id,hit_query_word,rank_type,poi_list,poi_raw_list,article_id,city_id,status,create_time,version,source_from) VALUES (%s,%s,%s, %s, %s,%s, %s,%s, %s,%s,%s)\"\"\"\n affect = insertOrUpdate(db_config['local'], _sql, _args)\n logging.info(\"insert method insert result is %s ,input _data is %s \", affect , _args)\n return\n\n \"\"\"\n update\n \"\"\"\n def update(query_word,query_id):\n _args = (query_word,query_id)\n _sql = \"\"\"update nlp_rank set query_word = %s WHERE id = %s\"\"\"\n affect = insertOrUpdate(db_config['local'], _sql, _args)\n logging.info(\"update method update result is %s ,input _data is %s \", affect , _args)\n return\n\n\n\n\n.. code:: python\n\n Django use example:\n\n \"\"\"\n file:settings.py\n change to your db config\n \"\"\"\n DATABASES = {\n 'default': {\n 'ENGINE': 'PyMysqlPool.mysql.connector.django',\n 'NAME': 'django',\n 'USER': 'root',\n 'PASSWORD': '*******',\n 'HOST': '10.95.130.***',\n 'PORT': '8899',\n 'OPTIONS': {\n 'autocommit': True,\n 'pool': {\n #use = 0 no pool else use pool\n \"use\":1,\n # size is >=0, 0 is dynamic pool\n \"size\":0,\n #pool name\n \"name\":\"local\",\n }\n },\n }\n }\n\n.. code:: python\n\n Flask use example:\n\n \"\"\"\n change to your db config\n \"\"\"\n from PyMysqlPool.mysql.connector.flask.mysql import MySQL\n\n app = Flask(__name__,template_folder='flaskPoolShowcase/flask_templates')\n #mysql config\n app.config.update(\n DEBUG=False,\n MYSQL_DATABASE_HOST='10.95.130.***',\n MYSQL_DATABASE_PORT=8899,\n MYSQL_DATABASE_USER='root',\n MYSQL_DATABASE_PASSWORD='******',\n MYSQL_DATABASE_DB='flask',\n MYSQL_USE_POOL=\n {\n #use = 0 no pool else use pool\n \"use\":0,\n # size is >=0, 0 is dynamic pool\n \"size\":10,\n #pool name\n \"name\":\"local\",\n },\n )\n mysql = MySQL()\n mysql.init_app(app)\n\n\n\nor use the connection type like prototype_ method.\n\nResources\n---------\n\npython mysql connector: https://dev.mysql.com/downloads/connector/python/\n\nMySQL Reference Manuals: http://dev.mysql.com/doc/\n\nMySQL client/server protocol:\nhttp://dev.mysql.com/doc/internals/en/client-server-protocol.html\n\nPyMysqlPool mailing list: https://groups.google.com/forum/#!forum/PyMysqlPool-users\n\nLicense\n-------\nPyMysqlPool is released under the MIT License. See LICENSE for more information.\n\nPlan\n-------\n | Dynamic Load Optimization.\n | Minimum number of connections to maximum performance.\n\nScope\n-------\n | Now use in **BaiDu** off-line calculation module.\n | Like this project, welcome to use and to enhance together.\n\nFrequency Ask\n-------------\n* Django support -- test on one of the following:\n Django 1.11.5\n show case: https://github.com/LuciferJack/Django-pool-showcase\n* Flask support -- test on one of the following:\n Flask 0.12.2\n show case: https://github.com/LuciferJack/Flask-pool-showcase", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://codeload.github.com/LuciferJack/python-mysql-pool/zip/master", "keywords": "mysql pool,queue,support list,dynamic pool,fixed pool", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "PyMysqlPool", "package_url": "https://pypi.org/project/PyMysqlPool/", "platform": "", "project_url": "https://pypi.org/project/PyMysqlPool/", "project_urls": { "Homepage": "https://codeload.github.com/LuciferJack/python-mysql-pool/zip/master" }, "release_url": "https://pypi.org/project/PyMysqlPool/1.0.9/", "requires_dist": null, "requires_python": "", "summary": "python practical mysql pool -motivation from=>[lost connection to MySQL server during query] base on mysql-connector support fixed | dynamic pool", "version": "1.0.9" }, "last_serial": 3890288, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "170be57ba2651f29c1bfaf8422c76412", "sha256": "d3fdfd2450854e4014afc593ed95045cc0f117a1c577939b4584ed45faeed885" }, "downloads": -1, "filename": "PyMysqlPool-0.2.tar.gz", "has_sig": false, "md5_digest": "170be57ba2651f29c1bfaf8422c76412", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 841, "upload_time": "2017-08-22T16:32:44", "url": "https://files.pythonhosted.org/packages/37/7d/860fea6631c520b3d6a56371e6cbb20caacb6f5d3e1ef395d59b4f087da6/PyMysqlPool-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "5b9c94cf4cc4966d781dc6e18931b898", "sha256": "5354b001f34144852661a0bd07c18c9c465ed7e63550d9e09fffe94870b948af" }, "downloads": -1, "filename": "PyMysqlPool-0.3.tar.gz", "has_sig": false, "md5_digest": "5b9c94cf4cc4966d781dc6e18931b898", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 129690, "upload_time": "2017-08-22T16:42:07", "url": "https://files.pythonhosted.org/packages/79/d0/12044402e6b0048e713bde185adf85e7c52febd6389569b7e8b1e1175362/PyMysqlPool-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "3fb86a140d2e350221e798732769d4dd", "sha256": "4dfe85018adf75af6a285ed4ba6faa77c291be50a73ed7fdccd65b4edc0504dc" }, "downloads": -1, "filename": "PyMysqlPool-0.4.tar.gz", "has_sig": false, "md5_digest": "3fb86a140d2e350221e798732769d4dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 128677, "upload_time": "2017-08-22T17:09:48", "url": "https://files.pythonhosted.org/packages/d2/62/cc448509beda3ef834d6ce467d0fcb81eb74e8333c3f4c2cd7efb34c1934/PyMysqlPool-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "1cab2e320dc7e0a7af60a5fb4b7ebb2c", "sha256": "0295bd07ac06ce85214156b71ea9fd76e4b25e91e1f2761a44b3eb1adacafeeb" }, "downloads": -1, "filename": "PyMysqlPool-0.5.tar.gz", "has_sig": false, "md5_digest": "1cab2e320dc7e0a7af60a5fb4b7ebb2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 251390, "upload_time": "2017-08-23T08:14:11", "url": "https://files.pythonhosted.org/packages/db/eb/c068f22370d5deae9e5a15d4e20f9d0e2794259237fdd378fb92472598fb/PyMysqlPool-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "e2e6f3c8f48e10bfb6349917196c3cab", "sha256": "fa8dcfd5aa11aa4dc3f95276a8a04a01968536be9564ef64bdfd16a3a1345b32" }, "downloads": -1, "filename": "PyMysqlPool-0.6.tar.gz", "has_sig": false, "md5_digest": "e2e6f3c8f48e10bfb6349917196c3cab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 255857, "upload_time": "2017-09-02T05:31:32", "url": "https://files.pythonhosted.org/packages/9d/c6/976e982732e1ff32015b22d9052215d8467b9ce9a0acbc8b7927f51a8932/PyMysqlPool-0.6.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "18e7901425dbe56384e3afe0502ebae9", "sha256": "3360fcd2ac20c0f8de9e05eaec0074f1ad2a42c7301361622169320fda5a2802" }, "downloads": -1, "filename": "PyMysqlPool-0.7.tar.gz", "has_sig": false, "md5_digest": "18e7901425dbe56384e3afe0502ebae9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 254784, "upload_time": "2017-09-21T08:11:58", "url": "https://files.pythonhosted.org/packages/30/a7/72458e8524e350af5634fd6492dd283134a39d138582947936e385fdcb16/PyMysqlPool-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "71e054a10846c8bb0659d8a6e78a57ad", "sha256": "d3b1642964a69bfb683c14f3d44d7b649ebae75b6ce23de15b3de7bb88b9fd08" }, "downloads": -1, "filename": "PyMysqlPool-0.8.tar.gz", "has_sig": false, "md5_digest": "71e054a10846c8bb0659d8a6e78a57ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 255397, "upload_time": "2017-09-22T03:16:59", "url": "https://files.pythonhosted.org/packages/20/05/c244492b5c42c3087bd05690b5cf457843362eb13436e402b4ee37fed8dd/PyMysqlPool-0.8.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "37da44dfa1fbc5ecf9c897e8410dc342", "sha256": "5a896bb4be88f0402ece6f2fd5a72b1af6f613bca7dbeb2c8f7820f41f99be8a" }, "downloads": -1, "filename": "PyMysqlPool-0.9.tar.gz", "has_sig": false, "md5_digest": "37da44dfa1fbc5ecf9c897e8410dc342", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 255413, "upload_time": "2017-09-22T06:47:07", "url": "https://files.pythonhosted.org/packages/24/0b/8a721a950a7e64a39a16f31ffabd76ad249d041606b3948c08095fb3272c/PyMysqlPool-0.9.tar.gz" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "cd54e60fb56dee62954722e8454ac582", "sha256": "e1850c9204d84aaeb7dbe63552bc8c800b3f7e8e5eef8e5c8029b11f44df8f0b" }, "downloads": -1, "filename": "PyMysqlPool-1.0.tar.gz", "has_sig": false, "md5_digest": "cd54e60fb56dee62954722e8454ac582", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 255615, "upload_time": "2017-09-22T07:15:38", "url": "https://files.pythonhosted.org/packages/10/d4/7a5e1bb59974a01554559db5e398041cdb2fc7d1ba502e0ba450bedceb3b/PyMysqlPool-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "b9cda46b509da569d606f5d4ab01a5eb", "sha256": "885a926345ca79ea7e4fac9507db6ffe579d33383b02c090c760c02511197c4e" }, "downloads": -1, "filename": "PyMysqlPool-1.0.1.tar.gz", "has_sig": false, "md5_digest": "b9cda46b509da569d606f5d4ab01a5eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 256583, "upload_time": "2017-09-25T08:11:11", "url": "https://files.pythonhosted.org/packages/91/f0/c7cb2aa028b53193122bb86f6791161ee26eaa02d4a4d07901d95fdf3a4a/PyMysqlPool-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "39caefda85b0316d4c8fd15e21186164", "sha256": "9d594f83c253f234fab26f33367d4d8655e0ff52127664012e5d931c91acf55e" }, "downloads": -1, "filename": "PyMysqlPool-1.0.2.tar.gz", "has_sig": false, "md5_digest": "39caefda85b0316d4c8fd15e21186164", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135745, "upload_time": "2017-09-25T08:42:01", "url": "https://files.pythonhosted.org/packages/ae/e3/72148a998c984690a90d9e7a6d4526a4791798800aba5b523c7953db1146/PyMysqlPool-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "690c50205b687bb1f636792ec262222b", "sha256": "55c0253615e169f463d80e2c54801086b72273f8dea1130fce24339b5c423d34" }, "downloads": -1, "filename": "PyMysqlPool-1.0.3.tar.gz", "has_sig": false, "md5_digest": "690c50205b687bb1f636792ec262222b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135887, "upload_time": "2017-09-25T12:31:49", "url": "https://files.pythonhosted.org/packages/cc/50/82b8b071fbe46bf5da0b1d4e5ca26a71fc16b8385fda82d07706fefd781a/PyMysqlPool-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "d715dbb82392f23512e0d3c2b4ddf412", "sha256": "a7f84bccb9ad16cd2aa20e2cc5e857d38163c352cfdc7eb6e98babc62b098017" }, "downloads": -1, "filename": "PyMysqlPool-1.0.4.tar.gz", "has_sig": false, "md5_digest": "d715dbb82392f23512e0d3c2b4ddf412", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135895, "upload_time": "2017-09-25T12:37:15", "url": "https://files.pythonhosted.org/packages/6b/5e/eef5b731c17582820db4021ff403924f90280d9cd960d10d85acfb1fbf88/PyMysqlPool-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "ca4fd77fbb4bc44ee5dd0d7a7a50f41b", "sha256": "97c3c8a3a3e56f4e0e51ef09f61aecf94d854edd070a51a10b0366fc55ab4cb6" }, "downloads": -1, "filename": "PyMysqlPool-1.0.5.tar.gz", "has_sig": false, "md5_digest": "ca4fd77fbb4bc44ee5dd0d7a7a50f41b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135901, "upload_time": "2017-09-25T12:50:25", "url": "https://files.pythonhosted.org/packages/e7/e9/ad7c8249968fa1a9e8c8b06dafdaec7cb06c2b4aa8040c7418c1bc610fec/PyMysqlPool-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "d50d7a2864e1eaf9c88e62af3d6c301c", "sha256": "16db125412d315e0610205627e94adf42131fd162bb988eab04c4ba8b31d0b04" }, "downloads": -1, "filename": "PyMysqlPool-1.0.6.tar.gz", "has_sig": false, "md5_digest": "d50d7a2864e1eaf9c88e62af3d6c301c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135825, "upload_time": "2018-05-22T16:34:38", "url": "https://files.pythonhosted.org/packages/28/71/cfd94c7cd491c60c26d79c076c36720cd27d99628fc585395d3bc2a69993/PyMysqlPool-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "43cee15e964fb527287aad29f98b51aa", "sha256": "df96481c0ffcd8f40305acea83fd42da78109ae5528ea58829b08fa2936d0cb3" }, "downloads": -1, "filename": "PyMysqlPool-1.0.7.tar.gz", "has_sig": false, "md5_digest": "43cee15e964fb527287aad29f98b51aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135835, "upload_time": "2018-05-23T06:42:29", "url": "https://files.pythonhosted.org/packages/a6/dc/42acbc795f922e84a57e03ff8ee88bd2eda0c414339a2be880a58ddbf12f/PyMysqlPool-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "e73724831451885f66bc9e8947111715", "sha256": "edd4c6b1f0aa3f9ea11b6d1434ae879035a3065fbdcab56fa0ad66365c45f8e4" }, "downloads": -1, "filename": "PyMysqlPool-1.0.8.tar.gz", "has_sig": false, "md5_digest": "e73724831451885f66bc9e8947111715", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135817, "upload_time": "2018-05-23T06:53:03", "url": "https://files.pythonhosted.org/packages/4c/2e/ce44c5524b358c56860bad132f7cecd99b66112cbba019a17281403052bd/PyMysqlPool-1.0.8.tar.gz" } ], "1.0.9": [ { "comment_text": "", "digests": { "md5": "3780d8302336518082dab64292276a1a", "sha256": "793c8475c1928e4423ec792097b3179bffa3921cfaa730fb86d379faa21a85e9" }, "downloads": -1, "filename": "PyMysqlPool-1.0.9.tar.gz", "has_sig": false, "md5_digest": "3780d8302336518082dab64292276a1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135815, "upload_time": "2018-05-23T06:58:48", "url": "https://files.pythonhosted.org/packages/34/90/6b5ea17698566a44e411a8ff6ffb4fbd3e275f1654d737b3b8fae30f339f/PyMysqlPool-1.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3780d8302336518082dab64292276a1a", "sha256": "793c8475c1928e4423ec792097b3179bffa3921cfaa730fb86d379faa21a85e9" }, "downloads": -1, "filename": "PyMysqlPool-1.0.9.tar.gz", "has_sig": false, "md5_digest": "3780d8302336518082dab64292276a1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135815, "upload_time": "2018-05-23T06:58:48", "url": "https://files.pythonhosted.org/packages/34/90/6b5ea17698566a44e411a8ff6ffb4fbd3e275f1654d737b3b8fae30f339f/PyMysqlPool-1.0.9.tar.gz" } ] }