1 |
Hallo. |
2 |
|
3 |
Deine Umlaute sind kaputt. Bitte sage deinem Mailer, dass du UTF-8 eingegeben |
4 |
hast oder deinem Editor, dass er iso-8859-1 speichern soll. |
5 |
|
6 |
|
7 |
Am Donnerstag, 16. November 2006 11:38 schrieb Alex: |
8 |
> was hab ich den für intelligente Möglichkeiten mysql-skript, bzw. |
9 |
> befehle per cronjob ablaufen zu lassen? |
10 |
> Ich würd gern jede nacht ein mysqloptimize laufen lassen, was aber den |
11 |
> root user braucht welcher ein Kennwort hat. |
12 |
> Das möcht ich jetzt ungern in den cronjob rein schreiben. |
13 |
> Ein ähnliches Problem hab ich mit mysql-skripten, welche die Daten |
14 |
> rotieren sollen. |
15 |
> Gibts da irgendwelche gute (sichere) Möglichkeiten des per cronjob |
16 |
> laufen zulassen? |
17 |
|
18 |
Also (warum hat das eingentlich wieder die Hälfte nicht kapiert?) du redest |
19 |
vom mysql-root nicht vom system-root, oder? |
20 |
|
21 |
Prinzipiell ist es ja keine gute Idee, das Passwort auf der Kommandozeile |
22 |
mitzugeben, aber man kann. |
23 |
Wir haben bei uns GrSecurity am Laufen und damit eingestellt, dass ein user |
24 |
nur seine Prozesse sehen kann. Die Prozesse von root kann also keiner sehen. |
25 |
Damit gehen wir das Problem an der Wurzel an und können nun nach Belieben das |
26 |
Passwort über die Kommandozeile mitgeben, da keiner die Kommandozeile sieht. |
27 |
gegen zufälliges über-die-Schulter-schauen hilft noch, dass in der normalen |
28 |
Prozessliste der mysql-Client dieses Passwort zensiert. Ich weiß nicht, ob es |
29 |
für normale user überhaupt (ohne GrSecurity) einen Weg gibt, die richtige |
30 |
Kommandozeile zu sehen. |
31 |
|
32 |
However, unsere mysql-cronjobs sehen dann in etwa so aus: |
33 |
mysql -u root "--password=$(< .../mysql-root-password.txt)" -N ... |
34 |
und damit kann man das Passwort in der crontab auch nicht mehr sehen sondern |
35 |
nur wenn man diese eine Datei (die der user logischerweise nicht lesen kann) |
36 |
anschaut. |
37 |
|
38 |
Zudem lassen wir das MySQL-Passwort von einem Cronjob regelmäßig neu setzen, |
39 |
falls doch mal was schiefgehen würde. Durch die Verwendung der Passwort-Datei |
40 |
ist es den cronjobs hier egal, wie oft man das Passwort ändert. |
41 |
|
42 |
|
43 |
Andere Möglichkeit, die nur funktioniert, wenn man MySQL-Befehle (und keine |
44 |
externen MySQL-Tools) benutzt will: |
45 |
Ein kleines Script in der Scriptsprache deines Vertrauens, das eine |
46 |
DB-Verbindung herstellt (z.B. mit Hilfe der Passwort-Datei) und das Kommando |
47 |
absetzt. Dann taucht das Passwort wirklich nirgends in einer Prozessliste |
48 |
oder Script-Datei auf. |
49 |
|
50 |
cu, |
51 |
Bernd |