Python MariaDB pip 安装失败,缺少 mariadb_config

Seb*_*Nik 2 python sql pip mariadb python-3.x

我正在使用 Linux Ubuntu 18.04 和 python 3。我试图在 maria-db 和我的 python 脚本之间建立连接。因此我必须安装 mariadb 包。
我已经安装了:

sudo apt install mariadb-server
Run Code Online (Sandbox Code Playgroud)

但是当我尝试:

pip install mariadb
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Collecting mariadb
  Using cached mariadb-1.0.0.tar.gz (78 kB)

    ERROR: Command errored out with exit status 1:
     command: /home/niklas/Desktop/Stuff/venv/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pycharm-packaging/mariadb/setup.py'"'"'; __file__='"'"'/tmp/pycharm-packaging/mariadb/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-wfnscxnz
         cwd: /tmp/pycharm-packaging/mariadb/
    Complete output (12 lines):
    /bin/sh: 1: mariadb_config: not found
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pycharm-packaging/mariadb/setup.py", line 26, in <module>
        cfg = get_config(options)
      File "/tmp/pycharm-packaging/mariadb/mariadb_posix.py", line 49, in get_config
        cc_version = mariadb_config(config_prg, "cc_version")
      File "/tmp/pycharm-packaging/mariadb/mariadb_posix.py", line 27, in mariadb_config
        "mariadb_config not found.\nPlease make sure, that MariaDB Connector/C is installed on your system, edit the configuration file 'site.cfg' and set the 'mariadb_config'\noption, which should point to the mariadb_config utility.")
    OSError: mariadb_config not found.
    Please make sure, that MariaDB Connector/C is installed on your system, edit the configuration file 'site.cfg' and set the 'mariadb_config'
    option, which should point to the mariadb_config utility.
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
Run Code Online (Sandbox Code Playgroud)

有谁能够帮助我 ?

编辑:

我现在已经能够连接到服务器,但不能使用 te mariadb 包。( https://linuxhint.com/connect_mariadb_pymysql/ )

use*_*518 13

安装 MariaDB Connector/C,这是一个依赖项。

sudo apt-get install libmariadb3 libmariadb-dev
Run Code Online (Sandbox Code Playgroud)

使用 PIP 安装 MariaDB Connector/Python。

pip3 install mariadb
Run Code Online (Sandbox Code Playgroud)


Geo*_*ter 6

要安装 mariadb python 模块,您必须安装最新版本的 MariaDB Connector/C,最低要求版本是 3.1.5,afaik Ubuntu 18.04 有 3.0.3。

MariaDB Connector/C 下载页面上提供了用于仿生的 Connector/C 的实际版本 。

如果要将其安装在特殊目录中,请确保 PATH 和 LD_LIBRARY_PATH 指向 bin 和 lib 目录。

我还建议使用最新版本的 MariaDB Server,尤其是在 MariaDB Server < 10.2 上非常快的 executemany() 方法会慢得多。