MySQL Einrichten



So, nun nach dem erst einmal quasi alles fast fertig ist, kommt nun der fast letzte Schritt im gesamten Konstrukt

Wir müssen uns noch um die MySQL Datenbank kümmern

Zur Zeit steht sie da so rum und man darf zur Zeit alles manchen. Das ist nicht so unbedingt das optimalste. Wenn der Server jedoch komplett in unserer Kontrolle steht und nur Wir am Server arbeiten, geht das fast Ok. Aber schön ist es trotzdem nicht

Normalerweise bekommt man einem gesagt wie viele Datenbanken die entsprechende Anwendung braucht, meist beschränkt sich das auf eine. Und das machen wir jetzt einmal

MySQL Root Passwort ändern


Aber als super erstes müssen wir zum einen die Testdatenbank killen und den Root Benutzer ändern. Das kann alles im MySQL Client passieren

server# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.42 FreeBSD port: mysql-server-5.1.42

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> drop database test;
Query OK, 0 rows affected (0.00 sec)

mysql> use mysql
Database changed
mysql> truncate db;
Query OK, 0 rows affected (0.01 sec)

mysql> delete from user where user = '';
Query OK, 2 rows affected (0.00 sec)

mysql> update user set password = password("blablabla") where user = "root";
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye
server# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
server# mysql -pblablabla
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.1.42 FreeBSD port: mysql-server-5.1.42

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> quit
Bye

So nun ist es bissel sicherer

MySQL User mit Datenbank erstellen


Nun erstellen wir für unsere Webcontent Jungs und Mädels einen MySQL User mit passender Datenbank. Ich persönlich nenne die meist ähnlich wie den eigentlichen User auch

server# mysql -pblablabla
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.1.42 FreeBSD port: mysql-server-5.1.42

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database cntfamp;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on cntfamp.* to 'cntfamp'@'%' identified by 'lalala';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye
server# mysql -ucntfamp
ERROR 1045 (28000): Access denied for user 'cntfamp'@'localhost' (using password: NO)
server# mysql -ucntfamp -plalala
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.1.42 FreeBSD port: mysql-server-5.1.42

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use mysql;
ERROR 1044 (42000): Access denied for user 'cntfamp'@'%' to database 'mysql'
mysql> use cntfamp;
Database changed
mysql> create table bla (id int);
Query OK, 0 rows affected (0.01 sec)

mysql> drop table bla;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye

Damit sind wir dann mit der MySQL fertig