
12.07.2011, 22:23
|
|
Новичок
Регистрация: 15.01.2010
Сообщений: 7
Провел на форуме: 33140
Репутация:
0
|
|
Сообщение от Expl0ited
Кстати совсем не логично, как я написал выше, доступ к удаленному серверу может быть только локально.
Это по умолчанию так, на то он и удалённый сервер.
PHP код:
[COLOR="#000000"][COLOR="#0000BB"]В MySQL пользователь характеризуется двумя параметрами[/COLOR][COLOR="#007700"]:[/COLOR][COLOR="#0000BB"]именем и хостом[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]с которого он может обращаться[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]По умолчанию доступ разрешен только с локальной машины[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]т[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]е[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]для пользователя user[/COLOR][COLOR="#007700"]@[/COLOR][COLOR="#0000BB"]localhost[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]Права на доступ пользователям даются с помощью команды GRANT[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]Команда выполняется под рутом[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]Например[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]если я хочу создать юзера[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]который сможет коннектиться с любого хоста с полными правами[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]то следует выполнить следующую команду[/COLOR][COLOR="#007700"]:[/COLOR][COLOR="#0000BB"]GRANT ALL PRIVILEGES ON[/COLOR][COLOR="#007700"]`[/COLOR][COLOR="#DD0000"]имя_базы[/COLOR][COLOR="#007700"]`.*[/COLOR][COLOR="#0000BB"]TO myuser[/COLOR][COLOR="#007700"]@[/COLOR][COLOR="#DD0000"]'%'[/COLOR][COLOR="#0000BB"]IDENTIFIED BY[/COLOR][COLOR="#DD0000"]'пароль'[/COLOR][COLOR="#007700"];[/COLOR][COLOR="#0000BB"]Примечание[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]Обратите внимание[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]что данная команда дает доступ пользователю myuser со всех IP кроме 127.0.0.1[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]соответсвующего localhost[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]Для пользователя myuser[/COLOR][COLOR="#007700"]@[/COLOR][COLOR="#0000BB"]localhost необходимо давать права отдельной командой GRANT[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]Если вы решите обратиться к локальной машине как к удаленной[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]используя протокол TCP[/COLOR][COLOR="#007700"]/[/COLOR][COLOR="#0000BB"]IP[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]то не забывайте[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]что myuser[/COLOR][COLOR="#007700"]@[/COLOR][COLOR="#0000BB"]localhost и myuser[/COLOR][COLOR="#007700"]@[/COLOR][COLOR="#0000BB"]ip_собственного_компа это разные пользователи и каждому из них права нужно давать отдельной командой[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]Второй пример показывает как дать право читать таблицу time_zone в базе mysql пользователю myuser с машины 192.168.0.76 с паролем mypassy[/COLOR][COLOR="#007700"]:[/COLOR][COLOR="#0000BB"]GRANT SELECT ON mysql[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]time_zone TO myuser[/COLOR][COLOR="#007700"]@[/COLOR][COLOR="#0000BB"]192.168.0.76 IDENTIFIED BY[/COLOR][COLOR="#DD0000"]'mypassy'[/COLOR][COLOR="#007700"];[/COLOR][/COLOR]
|
|
|