第一次在 Arch Linux (Manjaro) 中使用 MySQLdb 显示错误
First time using MySQLdb in Arch Linux (Manjaro) show error
这是我第一次在 python 上使用 MySQLdb 并且我在尝试 运行 我的程序时使用 Manjaro。错误总是显示为:
_mysql_exceptions.OperationalError: (2002, 'Can\'t connect to local MySQL server through socket \'/run/mysqld/mysqld.sock\' (13 "Permission denied")')
许多人建议我添加文件 mysqld.sock 是的,我做到了,但仍然出现同样的错误。
我得到建议安装 mysql-client,python-mysql-connector,mysql-python,但仍然出错。
根据这个提示
"Permission denied"
我猜你的操作可能需要root权限。
根据提到的错误,mysql 服务似乎不在您的机器上 运行。
您必须启动 mysql 服务,然后才能连接到 mysql。
现在,由于您提到您有一个 全新安装,在您启动 mysql 服务之前,您必须初始化您的 MySQL 数据目录。您可以使用
mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
并确保使用
保护您的安装
mysql_secure_installation
然后您可以继续启动 mysql 服务。
因为你在 Manjaro 上,你可以用
启动 mysql 服务
sudo systemctl start mariadb
这是我第一次在 python 上使用 MySQLdb 并且我在尝试 运行 我的程序时使用 Manjaro。错误总是显示为:
_mysql_exceptions.OperationalError: (2002, 'Can\'t connect to local MySQL server through socket \'/run/mysqld/mysqld.sock\' (13 "Permission denied")')
许多人建议我添加文件 mysqld.sock 是的,我做到了,但仍然出现同样的错误。
我得到建议安装 mysql-client,python-mysql-connector,mysql-python,但仍然出错。
根据这个提示
"Permission denied"
我猜你的操作可能需要root权限。
根据提到的错误,mysql 服务似乎不在您的机器上 运行。
您必须启动 mysql 服务,然后才能连接到 mysql。
现在,由于您提到您有一个 全新安装,在您启动 mysql 服务之前,您必须初始化您的 MySQL 数据目录。您可以使用
mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
并确保使用
保护您的安装mysql_secure_installation
然后您可以继续启动 mysql 服务。
因为你在 Manjaro 上,你可以用
启动 mysql 服务sudo systemctl start mariadb