Назад | Перейти на главную страницу

Удаленный сервер mysql?

Я пытаюсь сделать удаленный сервер mysql на своем компьютере. Я знаю, что это не очень разумно, но я все равно пробую. Я не уверен, какие шаги нужно выполнить здесь, но, возможно, кто-нибудь сможет их заполнить. Прежде всего, у меня на компьютере установлен MySQL вместе с администратором mysql. Затем я перенаправляю порт 3306. Когда я вхожу в систему администратора MySQL или в браузере запросов, я вхожу в систему как localhost. Теперь я знаю, что есть еще несколько шагов, поскольку mysql все еще не является общедоступным. Может ли кто-нибудь помочь мне их заполнить?


Хорошо, ребята, я нигде не могу найти свой файл my.cnf! Я просмотрел MySQL Server 5.1 и все мои каталоги MySQL, но не могу его найти. У меня даже нет каталога etc ...

Ответ geoff совершенно не соответствует тому, что вы хотите сделать (и не обязательно, если вы просто подключаетесь к своему IP-адресу). Я бы знал, потому что я только что настроил свою первую базу данных для удаленного доступа! Одна вещь, которую нужно будет сделать, - это создать файл my.cnf (проверьте документацию на предмет его расположения в зависимости от вашего дистрибутива и операционной системы). Мой выглядит так:

[client]
port=3306
socket=/var/lib/mysql/mysql.sock

[mysqld]
port=3306
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
bind-address=""MY IP ADDRESS HERE""
#bind-address=0.0.0.0

[mysql]
prompt="\U>"
prompt=(\\u@\\h) [\\d]>\\_

[mysqld_safe]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

Важными частями являются порт (хотя у меня есть порт по умолчанию) и адрес привязки. Указанный адрес привязки будет вашим IP-адресом. Закомментированный 0.0.0.0 это дикая карта IP-адресов.

Прежде чем вы сможете подключиться к базе данных mysql, вы должны предоставить пользователю, к которому вы подключаетесь, разрешения для этого. Что-то вроде следующего поможет вам начать:

GRANT ALL PRIVILEGES ON *.* for 'root'@'%' IDENTIFIED BY 'db_passwd';

*.* - это подстановочный знак databasename.tablename. 'root' может быть любой пользователь. В '%' - это подстановочный знак хоста, но я настоятельно рекомендую указывать только ваш IP-адрес ('root'@'123.123.123.123'). Ваш пароль (если есть) будет db_passwd, и включите одинарные кавычки при выполнении строки. Тип FLUSH PRIVILEGES чтобы перезагрузить эти новые привилегии.

Я бы использовал программу сетевого монитора, чтобы проверить, подключаетесь ли вы к своему серверу mysql. Посмотрим, как это пойдет. Дополнительную помощь также можно найти в Google "доступ к сети mysql" и т. Д., Вот как я заставил его работать.