websql

Asynchronous Python interface to MySQL


Keywords
mysql-connector, mysql-cluster, asyncio, async, c, cluster, mysql, python
License
GPL-2.0+
Install
pip install websql==1.1.2

Documentation

WSQL

https://travis-ci.org/WebSQL/wsql.svg?branch=master https://coveralls.io/repos/WebSQL/wsql/badge.png?branch=master

WSQL is an asynchronous python connector to the popular MySQL database server based on WebScaleSQL.

The design goals are:
  • Compatibility with Python3 asyncio package
  • Compliance with Python database API version 2.0 [PEP-0249]
  • Thread-safety
  • Thread-friendliness (threads will not block each other)
  • Support mysql-clusters like: Percona-XtraDB-Cluster, GaleraCluster
import wsql.cluster.connect
# master:master(active:active)
connection = wsql.cluster.connect("master=localhost:3305#2,localhost:3306#2", database="test")
# master:slave(active:passive)
connection = wsql.cluster.connect("master=localhost;slave=localhost:3307#4", database="test")
# read-only
connection = wsql.cluster.connect("slave=localhost:3307#4;database=test;")

MySQL-5.5 and newer and Python-3.4 and newer are currently supported.

Setup dependencies

  • cmake version 2.8.11 or higher
  • openssl-devel version 1.0 or higher
  • python3-devel
  • zlib-devel
  • gcc

WSQL is Free Software.

Documentation.