MySQL
Lage en ny database
Fra bash-prompten:
[root@ts01]# mysql mysql> CREATE DATABASE nybase;
Sette passord for systembrukeren (root) til MySQL
Som standard har systembrukeren "root" tilgang til databasen uten passord. Det er lurt å sette dette passordet hvis man har tenkt å bruke MySQL. Det kan gjøres på (minst!) to måter. Den første er enkel men litt usikker, den andre er sikrere men litt mer komplisert.
Den enkle - og nokså sikre måten:
mysql_secure_installation
Den andre, men mer kompliserte måten ser slik ut. Sette passord vha mysqladmin-verktøyet:
[root@ts01]# mysqladmin --user=root password nytt-kuult-passord
Sette passord fra mysql:
[root@ts01]# mysql --user=root mysql> use mysql; <-- Velger databasen "mysql" mysql> UPDATE user SET password=PASSWORD('nytt-kuult-passord') WHERE user='root'; mysql> FLUSH PRIVILEGES;
Ved neste pålogging må man oppgi at man ønsker å bruke passord,
[root@ts01]# mysql -p
og hvis man skal logge på med en bruker som har et brukernavn forskjellig fra innloggingsnavnet kan man også si hvilken bruker man ønsker å logge på med:
[vanlig-bruker@ts01]# mysql -p --user root
Lage nye brukere
mysql> GRANT ALL ON nybase.* TO nybruker@localhost IDENTIFIED BY 'kuult-passord';
Dette lager en bruker "nybruker" med passord "kuult-passord", og fra "localhost" har denne brukeren alle rettigheter til databasen "nybase" (som allerede må eksistere).
Endre standard tegnsett i mysql
Det er en del installasjoner som nå vil ha UTF8 som standard i nye databaser, men det er ikke standard i CentOS v5.5 (i alle fall). Du kan endre /etc/my.conf for å sette en ny standard:
[mysqld] default-character-set=utf8 default-collation=utf8_general_ci
Eller du kan lage databasene slik:
mysql> CREATE DATABASE nybase CHARACTER SET utf8 COLLATION utf8_general_ci;