Różnice między wybraną wersją a wersją aktualną.
| Nowa wersja | Poprzednia wersja | ||
| mysql [2013/03/26 12:49] – utworzono kamil | mysql [2025/01/11 18:58] (aktualna) – edycja zewnętrzna 127.0.0.1 | ||
|---|---|---|---|
| Linia 3: | Linia 3: | ||
| ==== Administracja ==== | ==== Administracja ==== | ||
| - | Zalogowanie się do MySQL za pomocą mysql: | + | === Zalogowanie się do MySQL za pomocą mysql === |
| - | <font> | + | <file> |
| $ mysql -u mysql -p mysql | $ mysql -u mysql -p mysql | ||
| Enter password: | Enter password: | ||
| Linia 24: | Linia 24: | ||
| mysql> | mysql> | ||
| - | </font> | + | </file> |
| W PLD administrator MySQL’a nazywa się mysql, w innych dystrybucjach może on się nazywać inaczej np: w Debianie będzie to root | W PLD administrator MySQL’a nazywa się mysql, w innych dystrybucjach może on się nazywać inaczej np: w Debianie będzie to root | ||
| - | Stworzenie użytkownika na bazie danych: | ||
| - | <font> | + | === Stworzenie użytkownika na bazie danych === |
| + | |||
| + | <file> | ||
| CREATE USER ' | CREATE USER ' | ||
| - | </font> | + | </file> |
| Zmiana hasła dla użytkownika: | Zmiana hasła dla użytkownika: | ||
| - | <font> | + | <file> |
| UPDATE mysql.user SET Password=PASSWORD(' | UPDATE mysql.user SET Password=PASSWORD(' | ||
| - | </font> | + | </file> |
| - | Usunięcie użytkownika z bazy danych: | + | === Usunięcie użytkownika z bazy danych |
| - | <font> | + | <file> |
| DROP USER ' | DROP USER ' | ||
| - | </font> | + | </file> |
| - | Stworzenie instancji na bazie danych: | + | === Stworzenie instancji na bazie danych |
| - | <font> | + | <file> |
| CREATE DATABASE dbname; | CREATE DATABASE dbname; | ||
| - | </font> | + | </file> |
| - | Nadanie praw użytkownikowi do bazy danych: | + | === Nadanie praw użytkownikowi do bazy danych |
| - | <font> | + | <file> |
| GRANT ALL PRIVILEGES ON dbname.* TO username@' | GRANT ALL PRIVILEGES ON dbname.* TO username@' | ||
| - | </font> | + | </file> |
| Tu mała uwaga: w MySQL’u użytkownik identyfikowany jest za pomocą nazwa@host, gdzie nazwa@’%’ nie jest równa nazwa@localhost, | Tu mała uwaga: w MySQL’u użytkownik identyfikowany jest za pomocą nazwa@host, gdzie nazwa@’%’ nie jest równa nazwa@localhost, | ||
| - | <font> | + | <file> |
| GRANT ALL PRIVILEGES ON dbname.* TO username@' | GRANT ALL PRIVILEGES ON dbname.* TO username@' | ||
| - | </font> | + | </file> |
| Gdy pierwszy raz nadawaliśmy użytkownikowi nazwa@’%’ uprawnienia to MySQL tak naprawdę stworzył tego użytkownika i trzeba jemu nadać też hasło: | Gdy pierwszy raz nadawaliśmy użytkownikowi nazwa@’%’ uprawnienia to MySQL tak naprawdę stworzył tego użytkownika i trzeba jemu nadać też hasło: | ||
| - | <font> | + | <file> |
| UPDATE mysql.user SET Password=PASSWORD(' | UPDATE mysql.user SET Password=PASSWORD(' | ||
| - | </font> | + | </file> |
| To samo tyczy się usuwania, jeśli istnieje użytkownik name@localhost i name@’%’ podczas usuwania name@localhost użytkownik name@’%’ zostanie na bazie danych! Jeśli nie chcemy tego to też musimy go usunąć: | To samo tyczy się usuwania, jeśli istnieje użytkownik name@localhost i name@’%’ podczas usuwania name@localhost użytkownik name@’%’ zostanie na bazie danych! Jeśli nie chcemy tego to też musimy go usunąć: | ||
| - | <font> | + | <file> |
| DROP USER ' | DROP USER ' | ||
| - | </font> | + | </file> |
| - | Usunięcie instancji na bazie danych: | + | === Usunięcie instancji na bazie danych |
| - | <font> | + | <file> |
| DROP DATABASE dbname; | DROP DATABASE dbname; | ||
| - | </font> | + | </file> |
| - | Po nadaniu uprawnień należy odświeżyć uprawnienia komendą: | + | === Po nadaniu uprawnień należy odświeżyć uprawnienia komendą |
| - | <font> | + | <file> |
| FLUSH PRIVILEGES; | FLUSH PRIVILEGES; | ||
| - | </font> | + | </file> |
| - | Wyświetlenie listy użytkowników: | + | === Wyświetlenie listy użytkowników |
| - | <font> | + | <file> |
| mysql> select host, user from mysql.user; | mysql> select host, user from mysql.user; | ||
| +-----------+-----------------+ | +-----------+-----------------+ | ||
| Linia 106: | Linia 107: | ||
| mysql> | mysql> | ||
| - | </font> | + | </file> |
| - | Wyświetlenie listy instancji bazodanowych: | + | === Wyświetlenie listy instancji bazodanowych |
| - | <font> | + | <file> |
| mysql> show databases; | mysql> show databases; | ||
| +--------------------+ | +--------------------+ | ||
| Linia 123: | Linia 124: | ||
| mysql> | mysql> | ||
| - | </font> | + | </file> |
| + | |||
| + | ==== Backup ==== | ||
| + | |||
| + | === Uprawnienia === | ||
| + | |||
| + | < | ||
| + | GRANT SELECT, LOCK TABLES ON baza.* TO backup_user@localhost IDENTIFIED BY ' | ||
| + | FLUSH PRIVILEGES; | ||
| + | </ | ||
| + | |||
| + | === Sam czysty SQL === | ||
| + | |||
| + | < | ||
| + | $ data=`date +%Y_%m_%d` | ||
| + | mysqldump -u dbuser --password=tajnepass dbname > / | ||
| + | </ | ||
| + | |||
| + | Jeśli baza danych posiada funkcję to nalezy też dumpować – służy do tego opcja -R: | ||
| + | |||
| + | < | ||
| + | mysqldump -u dbuser --password=tajnepass -R dbname > / | ||
| + | </ | ||
| + | |||
| + | === Z kompresją === | ||
| + | |||
| + | < | ||
| + | mysqldump -u dbuser --password=tajnepass dbname | bzip2 > / | ||
| + | </ | ||
| + | |||
| + | === Bez danych – sam schemat === | ||
| + | |||
| + | < | ||
| + | mysqldump -u dbuser --password=tajnepass --no-data dbname > / | ||
| + | </ | ||
| + | |||
| + | === Same dane – bez schematu === | ||
| + | |||
| + | < | ||
| + | mysqldump -u dbuser --password=tajnepass --skip-triggers --compact --no-create-info dbname > / | ||
| + | </ | ||
| + | |||
| + | === Wszystkie bazy === | ||
| + | |||
| + | < | ||
| + | mysqldump -u mysql --password=tajnepass --all-databases > / | ||
| + | </ | ||
| + | |||
| + | === Odtwarzanie bazy danych === | ||
| + | |||
| + | < | ||
| + | mysql -u dbuser --password=tajnepass dbname < / | ||
| + | </ | ||
| + | |||
| + | ==== Użytkowanie ==== | ||
| + | |||
| + | === Pokazanie struktury bazy danych === | ||
| + | |||
| + | < | ||
| + | mysql> show tables; | ||
| + | +-------------------------+ | ||
| + | | Tables_in_ocsweb | ||
| + | +-------------------------+ | ||
| + | | accesslog | ||
| + | | accountinfo | ||
| + | | bios | | ||
| + | | blacklist_macaddresses | ||
| + | | blacklist_serials | ||
| + | . | ||
| + | . | ||
| + | . | ||
| + | | slots | | ||
| + | | softwares | ||
| + | | softwares_name_cache | ||
| + | | sounds | ||
| + | | storages | ||
| + | | subnet | ||
| + | | tags | | ||
| + | | videos | ||
| + | | virtualmachines | ||
| + | +-------------------------+ | ||
| + | 54 rows in set (0.00 sec) | ||
| + | |||
| + | mysql> | ||
| + | </ | ||
| + | |||
| + | === Pokazanie struktury tabeli === | ||
| + | |||
| + | < | ||
| + | mysql> desc files; | ||
| + | +---------+--------------+------+-----+---------+-------+ | ||
| + | | Field | Type | Null | Key | Default | Extra | | ||
| + | +---------+--------------+------+-----+---------+-------+ | ||
| + | | NAME | varchar(150) | NO | PRI | NULL | | | ||
| + | | VERSION | varchar(100) | NO | PRI | NULL | | | ||
| + | | OS | varchar(80) | ||
| + | | CONTENT | longblob | ||
| + | +---------+--------------+------+-----+---------+-------+ | ||
| + | 4 rows in set (0.02 sec) | ||
| + | |||
| + | mysql> | ||
| + | </file> | ||