วิธีปิดการใช้งานอูบุนตู secure-file-priv MySQL


17

พวกฉันมีแอปพลิเคชั่นที่ใช้ SELECT OUTFILE เพื่อใช้เป็นแคชสำหรับแอปพลิเคชันอื่นดังนั้นมันจึงส่งออกตรงไปยัง / dev / shm / some / โฟลเดอร์

ขณะที่มันทำงานบนเซิร์ฟเวอร์พื้นหลังฉันไม่มีปัญหาในการปิดการใช้งานความปลอดภัย mysql ทั้งหมดตัวเลือกsecure_file_privไม่ได้ถูกตั้งค่าใน my.ini แต่เป็นค่าเริ่มต้นที่กำหนดโดยรุ่นวิธีปิดการใช้งานความปลอดภัยของโฟลเดอร์นี้

[MySQL Version]
/usr/sbin/mysqld  Ver 5.7.12-0ubuntu1 for Linux on x86_64 ((Ubuntu))

[Ubuntu Version]
Description:    Ubuntu 16.04 LTS
Release:        16.04
Codename:       xenial

คำตอบ:


29

เอกสารประกอบ mysql บนsecure_file_privระบุว่าตัวแปรถูกตั้งค่าเป็นตำแหน่งระบบไฟล์เฉพาะของแพลตฟอร์มเพื่อให้ปลอดภัยโดยค่าเริ่มต้น

ดังที่กล่าวไว้คุณจะต้องตั้งค่าตัวแปรให้เป็นสตริงว่างในการกำหนดค่าของคุณเพื่อปิดใช้งานคุณสมบัติความปลอดภัยนี้

สำหรับ Ubuntu ให้แก้ไขไฟล์/etc/mysql/mysql.conf.d/mysqld.cnfและเพิ่มบรรทัดต่อไปนี้ในตอนท้าย:

secure_file_priv=""

จากนั้นตรวจสอบให้แน่ใจว่าได้รีสตาร์ทบริการ


ขอบคุณ !! ที่จริงฉันได้ทำการแก้ปัญหาโดยใช้เพียง "/" แทนเส้นทางโดยสมมติว่าเส้นทางทุกเส้นทางจะอยู่ข้างใน
Diogo Paim

2

สำหรับฉันที่เพิ่มไปยังจุดสิ้นสุดของไฟล์ด้านบนไม่ทำงาน

ฉันเพิ่มลงใน/etc/mysql/my.cnfไฟล์ในส่วน [mysqld] และใช้งานได้

คุณอาจสร้างส่วนนั้นในไฟล์ด้านบนและใช้งานได้ฉันไม่ได้ทดสอบ

หลังจากที่เซิร์ฟเวอร์เริ่มต้นใหม่คุณสามารถทดสอบSHOW VARIABLES LIKE "secure_file_priv";ได้หากคุณมีสิทธิ์ที่จะทำเช่นนั้น


3
นี่เป็นความคิดเห็นจริงๆและไม่ใช่คำตอบสำหรับคำถามเดิม คุณสามารถแสดงความคิดเห็นในโพสต์ของคุณเองและเมื่อคุณมีเพียงพอชื่อเสียงคุณจะสามารถที่จะแสดงความคิดเห็นในโพสต์ใดโปรดอ่านทำไมฉันต้องมี 50 ชื่อเสียงเพื่อแสดงความคิดเห็น ฉันควรทำอะไรแทน
DavidPostill
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.