UPD:这个问题不同于MySQL: Enable LOAD DATA LOCAL INFILE
这个问题与本地运行有关,与Travis本地构建无关,使用这些选项,一切都像魔咒一样工作,没有问题,但在Travis中运行,也要求MySQL不是MySQL客户端,而是编程-所以我不能设置任何客户端选项,这让我的情况不同.
我正在try 设置Travis Build-但遇到了错误
MySQLdb.OperationalError: (2068, 'LOAD DATA LOCAL INFILE file request rejected due to restrictions on access.')
我try 了local_infile选项,就像我在本地系统上所做的那样:
mysql -u root -h localhost -e 'SET GLOBAL local_infile=1'
(我在安装前部分、安装部分try 了此选项)
但这仍然没有帮助.
我完全被困住了,不知道该往哪里走.感谢任何人的帮助.
我的Travis配置如下:
language: python
os: linux
dist: jammy
services:
- mysql
python:
- "3.10.5"
env:
- TESTENV=test
before_install:
- mysql -u root -h localhost -e 'GRANT ALL PRIVILEGES ON *.* TO "travis"@"%"'
install:
- pip3 install --upgrade pip
- pip3 install --upgrade setuptools wheel
- mysql -u root -h localhost -e 'SET GLOBAL local_infile=1'
- pip3 install -r requirements.txt
- if [[ "$TESTENV" != "docs" ]]; then pip3 install -r requirements-test.txt; fi
- pip3 install -e .
script:
- if [[ "$TESTENV" == "test" ]]; then coverage run -m pytest --server=mysql://travis@127.0.0.1:3306/ src/tests; fi
- if [[ "$TESTENV" == "test" ]]; then coverage report -m; fi