di dalam databasenya sy pk Stored Procedure, View dan Trigger...--> apa ini masalahnya...



delimiter |
CREATE TRIGGER delete_expired_tweets AFTER INSERT ON tweets
FOR EACH ROW BEGIN
DELETE FROM tweets WHERE DATEDIFF(NOW(), created_at) > 365;
END;
|
delimiter ;
#/> mysql -h myhost -u normaluser -p mydatabase
Enter password: **********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.0.41-community-nt MySQL Community Edition (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> source trigger.sql
ERROR 1227 (42000): Access denied; you need the SUPER privilege
for this operation


Gyus wrote:Akses ditolak? dengan pesan "you can only add triggers if your user account has the SUPER privilege enabled" (anda hanya dapat menambahkan trigger jika account pengguna anda memiliki hak SUPER diaktifkan). Saia tahu itu pesan kesalahan tapi di sini masalahnya, dari database normal dibuat menggunakan "GRANT ALL PRIVILEGES ON database.* TO..." tidak akan memiliki SUPER privilege ditugaskan kepada mereka secara default. Seperti dijelaskan di sini, SUPER privilege di MySQL account melakukan beberapa hal yang pengguna database normal, di lingkungan yang paling tidak dapat melakukan (seperti kill database threads, modify global system variables, dll). Sebagai hasilnya, itu ide yang sangat buruk untuk memberikan SUPER privilege kepada pengguna database normal, bahkan jika mereka hanya perlu SUPER privilege untuk memuat trigger. "You know better than that !" kekekeke...![]()
Lebih buruk lagi, misalkan anda GRANT SUPER PRIVILEGES untuk single user pada database tunggal. Nah, yang masih tidak akan cukup untuk memuat trigger. Sayangnya, loading trigger membutuhkan SUPER PRIVILEGES di tingkat global (misalnya, GRANT SUPER PRIVILEGES ON *.*). Sekali lagi, ini adalah ideal yang sangat buruk untuk memberikan pengguna database normal hak SUPER.
Jadi bagaimana tepatnya saia bisa memuat memicu ini? Nah sejauh yang saia tahu, dengan asumsi saia menolak untuk memberi kan SUPER PRIVILEGES dengan alasan pertimbangan, saia memiliki dua pilihan:
1. Jangan gunakan trigger dan menemukan cara lain untuk pembersihan baris dalam tabel.
2. Masuk ke database sebagai root / admin dan beban trigger atas nama pengguna biasa. Jika saia bukan pemilik dari database server, ini mungkin akan melibatkan bertanya pada administrator database saia untuk memuat memicu bagi saia.
Ini hanyalah salah satu dari gangguan yang umum dengan MySQL. Menyebalkan.. saia tahu itu.... wkwkwkwkw
Ref: Privileges Provided by MySQL


mahmud83 wrote:Jadi om, solusinya fungsi trigger harus di matikan ya..![]()


Gyus wrote:tidak juga boz.. cuma masalah akses pada status SUPER privilege aja koq


Return to Internet, Domain & Hosting
Users browsing this forum: No registered users and 2 guests