Cara menonaktifkan secure-file-priv MySQL Ubuntu

16

Guys Saya memiliki aplikasi yang menggunakan SELECT OUTFILE untuk digunakan sebagai cache untuk aplikasi lain, jadi, output langsung ke folder / dev / shm / some /.

Karena berjalan di server latar belakang, saya tidak memiliki masalah menonaktifkan semua keamanan mysql, opsi secure_file_priv tidak diatur di my.ini tetapi secara default diatur oleh versi, bagaimana cara menonaktifkan keamanan folder 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
Diogo Paim
sumber

Jawaban:

25

Dokumentasi mysql di secure_file_priv menyatakan bahwa variabel diatur ke lokasi default, spesifik sistem platform, untuk membuatnya aman secara default.

Yang mengatakan, Anda perlu secara eksplisit mengatur variabel ke string kosong di konfigurasi Anda untuk menonaktifkan fitur keamanan ini.

Untuk Ubuntu, edit file /etc/mysql/mysql.conf.d/mysqld.cnfdan tambahkan baris berikut di akhir:

secure_file_priv=""

Kemudian pastikan untuk memulai kembali layanan.

antoinet
sumber
Terima kasih!! Sebenarnya saya telah membuat solusi dengan hanya menggunakan "/" alih-alih jalan, dengan asumsi setiap jalan akan berada di dalamnya.
Diogo Paim
2

Bagi saya menambahkan ke akhir file di atas tidak berhasil.

Saya menambahkannya ke /etc/mysql/my.cnffile di bagian [mysqld] dan berhasil.

Anda mungkin dapat membuat bagian itu di file di atas dan juga berfungsi, saya tidak mengujinya.

Setelah server memulai kembali Anda dapat menguji dengan SHOW VARIABLES LIKE "secure_file_priv";ketentuan Anda memiliki hak untuk melakukannya.

7UpMan
sumber
3
Ini benar-benar komentar dan bukan jawaban untuk pertanyaan awal. Anda selalu dapat mengomentari posting Anda sendiri, dan setelah Anda memiliki reputasi yang cukup Anda akan dapat mengomentari posting apa pun . Harap baca Mengapa saya perlu 50 reputasi untuk berkomentar? Apa yang bisa saya lakukan?
DavidPostill