Strona 1 z 1

MySQL - kilka stron na 1 serwerze

: 06 sty 2017, 22:07
autor: masterpascaler
Postawiłem prosty serwer www składający się z Apache2, PHP7.0, MySQL
Ma on posłużyć do przeniesienia hostingu od usługodawcy do mnie do domu, domeny zostają u usługodawcy z przekierowaniem na mój serwer.
Z obecnego hostingu dokonałem kopii całej zawartości przez ftp, oraz export baz danych poszczególnych stron.
Po zalogowaniu jako root do "mojego" phpmyadmin utworzyłem użytkownika o nazwie i haśle identycznym jak na hostingu usługodawcy żeby mieć mniej roboty z przeniesieniem hostingu na mój serwer. Nie wiem jakie nadać mu uprawnienia, to raz, dwa że po zalogowaniu nowym loginem do phpmyadmin z lewej strony widzę wszystkie bazy danych, między innymi "information_schema". Podczas próby importu z pliku bazy danych otrzymuję błąd

Kod: Zaznacz cały

#1044 - Access denied for user '19273461_am'@'%' to database 'information_schema'
Baza information_schema była od razu utworzona po instalacji MySQL, więc rozumiem że uprawnienia do niej ma użytkownik root.
Jak zrobić (jakie uprawnienia czy coś) by nowo utworzony użytkownik miał do dyspozycji wybrane dla siebie bazy danych, i jako że na serwerze będzie kilka stron, (np. kolejna również posiada bazę information_schema), jak odseparować je od siebie ? Czyli żeby np. mogły być 3 bazy o nazwie information_schema dla 3 różnych loginów?

Re: MySQL - kilka stron na 1 serwerze

: 07 sty 2017, 11:14
autor: ka_o_3991
information_schema to baza "systemowa", tam są przechowywane informacje o bazach danych, tabelach itd. Każda instancja MySQL taką posiada, ale Ty się nie musisz nią przejmować, aplikacje raczej z niej nie korzystają bezpośrednio. Baz o takiej nazwie nie eksportujesz z serwera źródłowego i nie importujesz na docelowym.

Re: MySQL - kilka stron na 1 serwerze

: 07 sty 2017, 17:34
autor: masterpascaler
Super! Tak zrobiłem i działa. W takim razie jeszcze pytanie jakie uprawnienia powinien mieć każdy użytkownik MySQL żeby nie widzieć wszystkich baz danych?

Re: MySQL - kilka stron na 1 serwerze

: 08 sty 2017, 12:15
autor: ka_o_3991
Dajesz mu po prostu uprawnienia tylko do tej bazy którą powinien widzieć, a globalne uprawnienia zabierasz. W PHPMyAdmin w "konta użytkowników" wybierasz usera, w zakładce "ogólny" masz uprawnienia globalne, w "Baza danych" masz te dla konkretnych baz.