Env
- Server Ubuntu 18.04, MySQL Server
- Client Ubuntu 20.04, MySQL Server 8
Problem
- เขียน bash script + python script เพื่อ clone db จาก server มา client
- โดย export db structure exclude trigger, export data by load outfile
- จากนั้นที่ client สร้าง db sturcture และ load infile data เข้า db จากนั้น import trigger
- ตอน export structure และ data จาก server ไม่พบปัญหา
- ปัญหาเกิดตอนพยายาม import data เข้าใน client
- มันแสดงใน python exception แบบนี้
1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
Solved
- ที่ฝั่ง client ให้เปิดคอนฟิกไฟล์ (MySQL Server 8, Ubuntu 20.04)
sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf
- เพิ่ม คอนฟิกประมาณนี้
secure-file-priv = ""
- ในคอนฟิกก็จะได้ประมาณนี้
#Ref
# The MySQL Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
log-error = /var/log/mysql/error.log
secure-file-priv = ""
local-infile = 1
- https://stackoverflow.com/questions/32737478/how-should-i-tackle-secure-file-priv-in-mysql
- https://computingforgeeks.com/how-to-solve-mysql-server-is-running-with-the-secure-file-priv-error/
No comments:
Post a Comment