Podstawy Mysql Na początek warto powiedzieć że MySQL nie obsługuje transakcji, widoków, kluczy obcych i podzapytań. W zasadzie są to podstawowe i największe wady tej bazy. Prócz nich można raczej wymieniać tylko zalety. Baza jest prosta w instalacji, konfiguracji, obsłudze, jest szybka i dość niezawodna i przenośna.
Interface
Z poziomu wiersza poleceń linuxa z mysql możemy pracować za pomocą wspaniałego wręcz środowiska tekstowego. Entuzjazm spowodowany jest głównie tym że jako jedno z niewielu pozwala na ponowne wykonywanie poleceń SQL przez naciskanie strzałki w górę i w dół. Jest to rzadko spotykana zaleta i pozwala w znaczący sposób przyśpieszyć pracę z bazą.
Aby zacząć pracować z bazą powinniśmy zalogować się do niej. Do tego celu używamy narzędzia mysql wpisując
mysql -u user -p
uruchomienie takiego polecenia sprawi że zostaniemy zapytani o hasło usera user i jeżeli autoryzacja się powiedzie zostaniemy wpuszczeni do bazy. Jeżeli mamy założoną bazę możemy się "przełączyć" na nią za pomocą komendy (już w bazie):
use nazwa_bazy;
przez wykonanie takiego polecenia zaczynamy pracę z określoną bazą. Aby się przekonać jakie bazy są w ogóle założone należy wykonać:
show databases;
Z koleji aby zobaczyć jakie są zdefiniowane tabele w naszej (określonej już) bazie należy wpisać:
show tables;
Jeżeli chcemy obejrzeć opis tabeli możemy wpisać :
desc tabela;
Wylogować się z bazy najprościej za pomocą skrótu:
\q
Podstawy admin
Jeżeli jesteśmy adminem bazy lub po prostu ją zainstalowaliśmy to możemy zalogować się na konto root. Mamy wtedy dostęp do tabel systemowych bazy mysql w której znajdują się informacje dotyczące uprawnień i ustawień całej bazy. Będąc rootem możemy też dodawać userów i tworzyć bazy danych. Możemy zarządzać prawami dostępu i zmieniać wszelkie dane we wszystkich tabelach i bazach.
Aby założyć nowe konto w bazie możemy wpisać:
use mysql;
insert into user (host, user, password) values ('localhost','konto',password('haslo'));
Aby założyć nową bazę należy wpisać:
create database nazwa;
Aby dać uprawnienia do bazy dla usera można wpisać poniższe komendy. Należy przy tym pamiętać że żadne zmiany dotyczące uprawnień (np prawo logowania) nie będą aktualne dopóki nie "flushniemy" uprawnień. Zamiast "all" możemy dawać prawa takie jak select, insert, update, drop, delete i jeszcze kilka. Odbieranie uprawnień odbywa się podobnie za pomocą polecenia revoke.
grant all on dbtest.* to user1;
flush privileges;
Aby wykonać backup bazy możemy z wiersza poleceń systemu wykonać dwa poniższe polecenia. Pierwsze z nich wykona pełen dump bazy "www" do pliku plikbazy. Drugie polecenie wykona tylko dump opisy tabel (jeśli chcemy zachować strukturę bazy).
mysqldump --all www -u root -p > plikbazy
mysqldump -d www -u root -p > plikbazy
Importowanie danych z plików tekstowych jest dość proste. Za pomocą polecenia mysqlimport możemy w łatwy sposób zaimportować do bazy dane z arkusza kalkulacyjnego lub innego źródła (najlepiej mieć dane oddzielone średnikami jak csv lub tabulatorami).
Co dalej ?
Odsyłam do dokumentacji którą można znaleźć w sekcji files. Jest baaardzo obszerna i powinniście znaleźć w niej wszystko czego szukacie.
Comments
Post new comment