Skip to main content

A batabase manager plugin for nonebot2,provide capability of connection to all kinds of databases

Project description

nonebot_plugin_navicat

pypi implementation wheel python license

功能

  • 对外暴露出数据库连接 支持mysql mongodb redis

开始使用

必须使用 pip

  • 通过 pip 从 PyPI 安装
pip install nonebot-plugin-navicat
  • 我全都要
pip install nonebot-plugin-navicat[all]
  • 要使用mysql
pip install nonebot-plugin-navicat[mysql]
  • 要使用postgresql
pip install nonebot-plugin-navicat[postgresql]
  • 要使用sqlite
pip install nonebot-plugin-navicat[sqlite]
  • 要使用mongodb
pip install nonebot-plugin-navicat[mongodb]
  • 要使用redis
pip install nonebot-plugin-navicat[redis]
  • 要使用elasticsearch
pip install nonebot-plugin-navicat[elasticsearch]
  • 在 nonebot2 项目中设置 load_plugin()
nonebot.load_plugin('nonebot_plugin_navicat')
  • 参照下文在 nonebot2 项目的环境文件 .env.* 中添加配置项

配置项

配置数据库连接

# mysql 如果有MYSQL_HOST则表示要进行mysql连接
MYSQL_HOST=
MYSQL_PORT=
MYSQL_USER=
MYSQL_PASSWORD=
MYSQL_DB=

# postgresql 如果有PGSQL_HOST则表示要进行postgresql连接
PGSQL_HOST=
PGSQL_PORT=
PGSQL_USER=
PGSQL_PASSWORD=
PGSQL_DB=

# sqlite 如果有SQLITE_HOST则表示要进行sqlite连接 这里是路径
SQLITE_HOST=

# mongodb 如果有MONGODB_HOST则表示要进行mongodb连接
MONGODB_HOST=
MONGODB_PORT=
MONGODB_USER=
MONGODB_PASSWORD=

# redis 如果有REDIS_HOST则表示要进行redis连接
REDIS_PARAMS={"decode_responses":true}
REDIS_HOST=
REDIS_PORT=
REDIS_PASSWORD=
REDIS_DB=

# redis sentinel 如果有REDIS_SENTINEL_PARAMS则表示要进行redis sentinel连接
REDIS_SENTINEL_PARAMS=
REDIS_SENTINEL_SERVICE_NAME=    # 必填

# redis cluster 如果有REDIS_CLUSTER_PARAMS则表示要进行redis cluster连接
REDIS_CLUSTER_PARAMS=
REDIS_CLUSTER_NODES=
# 集群没有db选项

# elasticsearch 如果有ELASTICSEARCH_PARAMS则表示要进行elasticsearch连接
ELASTICSEARCH_PARAMS=
ELASTICSEARCH_HOSTS=


# 以后会加入更多数据库支持

导出给其他插件

from nonebot import require

require("nonebot_plugin_navicat")
import nonebot_plugin_navicat as export # 兼容老写法,不至于大改

export.mysql_pool # mysql的

export.pgsql_pool # postgresql的

export.sqlite_pool # sqlite的

export.mongodb_client # mongodb的

export.redis_client # redis的
export.redis_sentinel
export.redis_cluster

export.elasticsearch # elasticsearch的

直接查询数据库 (0.2.0中已删除)

  • 危险功能! 在配置中启用NAVICAT_EXECUTE_SQL=true来开启
  • 使用方法:发送super ${dbname} + sql来查询
super mysql
show databases

更新记录

  • v0.3.0rc1 适配nonebot rc版本

  • v0.2.3 修复beta2的bug

  • v0.2.1 加入了对redis哨兵和集群的支持,对elasticsearch的支持

  • v0.2.0 使用 databases 代替直接连接,有了广泛的通用性

  • 移除了直接命令行查询数据库的功能,迁移到了单独的一个插件里面 nonebot-plugin-super

特别感谢

优化建议

  • bug report
  • more databases support

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot-plugin-navicat-0.4.0.tar.gz (21.1 kB view details)

Uploaded Source

Built Distribution

nonebot_plugin_navicat-0.4.0-py3-none-any.whl (21.3 kB view details)

Uploaded Python 3

File details

Details for the file nonebot-plugin-navicat-0.4.0.tar.gz.

File metadata

File hashes

Hashes for nonebot-plugin-navicat-0.4.0.tar.gz
Algorithm Hash digest
SHA256 63e7e18666cac950f262d1599a89581eac24d41d84c62495cf5972f7423db845
MD5 bbb0ac8706e9521877f0e91b93979027
BLAKE2b-256 383757d56b4bab15c4ad504f78a9c92c6e542b547c8ec0364311c87da08c69f3

See more details on using hashes here.

File details

Details for the file nonebot_plugin_navicat-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_navicat-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c93a99e78686a14476c10ef523562e7ae457517027881209062d860217195ded
MD5 8d327425c3aa45e9aa6ad539226260ca
BLAKE2b-256 10a12df3e8de76bae483a009d9d7a9705d9a2b5ec0e5973ae08ef4d7d6548c88

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page