ich hab hier eine jungfräuliche Ubuntu Server LTS 10.04 installation.
Dort wollte ich nur einstellen, dass beim mysql-Start bestimmte SQL-Anweisungen ausgeführt werden.
dazu habe ich die /etc/mysql/conf.d/meine.cnf erstellt.
inhalt:
Code: Select all
[mysqld]
init-file = /var/www/files/mysqlstart.sql # wird beim start des mysql-
die sql datei existiert und ist für alle lesbar. inhalt:
Code: Select all
FLUSH PRIVILEGES
der inhalt hat so allein eigentlich keinen sinn. ursprünglich stand da was anderes, aber weil das nicht funktionierte, habe ich mal was einfaches zum test benutzt. habe auch mit und ohne ";" am ende probiert.
der server startet jedoch nicht (ohne fehlermeldung) solange in der config das init-file steht. auch ein eintrag direkt in der my.cnf bringt das gleiche ergebnis. ebenfalls ein "init-file =" (also ohne angabe einer datei) lässt den server nicht starten.
sobald ich zeile mit init-file auskommentiere startet der server.
hat jemand eine idee?
in der syslog hab ich folgendes gefunden:
Code: Select all
Jun 26 11:13:51 ubuntu kernel: [ 164.086201] type=1503 audit(1309079631.922:30): operation="open" pid=1981 parent=1 profile="/usr/sbin/mysqld" requested_mask="::r" denied_mask="::r" fsuid=102 ouid=1000 name="/var/www/files/mysqlstart.sql"
hat das was mit apparmor zutun?
edit: ok, hat wirklich was mit apparmor zu tun. habe die datei nun nach /etc/mysql/conf.d verschoben und dort kann die datei gelesen werden. sehr ärgerlich dass da mysql keinen entsprechenden hinweis ausgibt.
cu