概述
安装 mariadb-connector-c
sqlAlchemy
的uri
配置如下所示:
DATABASE_URI = 'mariadb+mariadbconnector://user:AlexNAS.@117.80.209.183:3306/blog'
engine = create_engine(DATABASE_URI)
当服务器并没有安装mariadb
相关的依赖时,连接数据库会出现以下错误:
ModuleNotFoundError: No module named 'mariadb'
MacOS 环境
但是,我尝试直接安装mariadb
依赖时会出现以下错误,Please make sure, that MariaDB Connector/C is installed on your system
。
pip install mariadb
Please make sure, that MariaDB Connector/C is installed on your system.
Either set the environment variable MARIADB_CONFIG or edit the configuration
file 'site.cfg' and set the 'mariadb_config option, which should point
to the mariadb_config utility.
The MariaDB Download website at <https://downloads.mariadb.com/Connectors/c/>
provides latest stable releease of Connector/C.
提示我本机未安装MariaDB Connector/C
,可以通过brew
安装,如下:
brew install mariadb-connector-c
CentOS 环境
CentOS
环境下也会出现同样的错误:
Complete output (17 lines):
/bin/sh: mariadb_config: 未找到命令
Please make sure, that MariaDB Connector/C is installed on your system.
Either set the environment variable MARIADB_CONFIG or edit the configuration file 'site.cfg' and set the mariadb_config option, which should point to the mariadb_config utility.
同样的,CentOS
也需要安装MariaDB Connector
依赖,通过yum
安装:
yum install mariadb-devel
brew 小插曲
安装时可能会出现以下错误:
tar: Error opening archive: Failed to open '/Users/alex/Library/Caches/Homebrew/downloads/f05ca4fd9a0bff9b4ace97fbcb740e18953c4bf29db46e66d13c0ff54ca3a24b--openssl@1.1-1.1.1l.big_sur.bottle.tar.gz'
查阅了相关博客得到了以下解释:
Bintray 要关闭了, 所以 Homebrew 的归档之后就没再往Bintray 那边传了,而新版的 Homebrew 已经去除了Bintray相关,使用 ghcr.io 服务了。
正常情况下通过 Homebrew 官网提供的命令安装的用户是无感的,但是由于国内特殊网络环境的问题,我使用的是如上文所说的国内镜像,而国内的镜像是依然指向 Bintray 的,所以才会出现无法打开归档的错误。
具体解决方法,在commadline
中输入以下命令:
# 临时修改去掉国内的镜像设置
export HOMEBREW_BOTTLE_DOMAIN=''
# 通过更新profile文件永久修改设置
vim ~/.bash_profile
# 然后添加
export HOMEBREW_BOTTLE_DOMAIN=''
安装 mariadb
pip install mariadb
最后
以上就是开心流沙为你收集整理的sqlAlchemy 连接 MariaDB的全部内容,希望文章能够帮你解决sqlAlchemy 连接 MariaDB所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复