Захожу в консоль mysql набираю команду status; она показывает следующее:
mysql> status;
--------------
mysql Ver 11.18 Distrib 3.23.58, for portbld-freebsd5.3 (i386)Connection id: 2
Current database:
Current user: root@localhost
Current pager: stdout
Using outfile: ''
Server version: 3.23.58
Protocol version: 10
Connection: Localhost via UNIX socket
Client characterset: latin1
Server characterset: latin1
UNIX socket: /tmp/mysql.sock
Uptime: 17 hours 22 min 1 secThreads: 1 Questions: 4 Slow queries: 0 Opens: 6 Flush tables: 1 Open tables: 0 Queries per second avg: 0.000
--------------А как сделать чтобы
Connection: localhost via TCP/IPсоединения шли через TCP/IP ???
mysql -h 127.0.0.1 -p
>mysql -h 127.0.0.1 -pНу и что это?
Мне нужно чтобы mysqld запускался при старте системы уже НЕ С unix socketm а TCP/ip
Какой вопрос, такой и ответ. Так утилита mysql подключается к mysqld не через сокет, а через TCP/IP. А если тебя интересует, чтобы mysqld "висел" на TCP/IP, то в my.cnf закоментировать строку
skip-networking
и перезапустить mysqld.
>Какой вопрос, такой и ответ. Так утилита mysql подключается к mysqld не
>через сокет, а через TCP/IP. А если тебя интересует, чтобы mysqld
>"висел" на TCP/IP, то в my.cnf закоментировать строку
>skip-networking
>и перезапустить mysqld.Извините, но я переписал из /usr/local/share/mysql/ пример конфига my-small.cnf, положил его в /etc под именем my.cnf, но после перезапуска mysqld все равно выдает в выводе запроса status; что он запущен на UNIX socket. де копать?
>>Какой вопрос, такой и ответ. Так утилита mysql подключается к mysqld не
>>через сокет, а через TCP/IP. А если тебя интересует, чтобы mysqld
>>"висел" на TCP/IP, то в my.cnf закоментировать строку
>>skip-networking
>>и перезапустить mysqld.
>
>Извините, но я переписал из /usr/local/share/mysql/ пример конфига my-small.cnf, положил его в
>/etc под именем my.cnf, но после перезапуска mysqld все равно выдает
>в выводе запроса status; что он запущен на UNIX socket. де
>копать?
Забыл написать, что опция skip-networking там закоментирована
netstat -ltnu...
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
...Есть такое?
>netstat -ltnu
>
>...
>tcp 0
> 0 0.0.0.0:3306
> 0.0.0.0:*
> LISTEN
>...
>
>Есть такое?Такого нету,
зато если сказать sockstat есть такое
mysql mysqld 29316 3 tcp4 *:3306 *:*
mysql mysqld 29316 4 stream /tmp/mysql.sockсразу оговорюсь - система freebsd5.3, mysql 4.1.5
>сразу оговорюсь - система freebsd5.3, mysql 4.1.5клиентская бибилиотека MySQL себя так ведет. Если подключаешься и указываешь в качестве носта localhost, то поддключение происходит через UNIX socket.
> mysql mysqld 29316 3 tcp4 *:3306 *:*
Эта строка означает что он слушает. То есть, если при подключении указать в качеставе хоста настоящий IP адрес твоей машины --- получишь желаемое.
>>сразу оговорюсь - система freebsd5.3, mysql 4.1.5
>
>клиентская бибилиотека MySQL себя так ведет. Если подключаешься и указываешь в качестве
>носта localhost, то поддключение происходит через UNIX socket.
>
>
>> mysql mysqld 29316 3 tcp4 *:3306 *:*
>Эта строка означает что он слушает. То есть, если при подключении указать
>в качеставе хоста настоящий IP адрес твоей машины --- получишь желаемое.
>
Проблема собственно выросла из того что есть машина виндовая и на ней стоит mysql, так там клиент mysql выдает именно что то через сокет TCP.а если еще дальше смотреть то проблема в opencms - этой системе требуется mysql, так на виндовой она поставилась, а на freebsd пишет что не может подсоедениться к mysql. Вот я и подумал что дело может быть в том, что mysqld не висит на tcp сокете... хм...
>>>сразу оговорюсь - система freebsd5.3, mysql 4.1.5
>>
>>клиентская бибилиотека MySQL себя так ведет. Если подключаешься и указываешь в качестве
>>носта localhost, то поддключение происходит через UNIX socket.
>>
>>
>>> mysql mysqld 29316 3 tcp4 *:3306 *:*
>>Эта строка означает что он слушает. То есть, если при подключении указать
>>в качеставе хоста настоящий IP адрес твоей машины --- получишь желаемое.
>>
>
>
>Проблема собственно выросла из того что есть машина виндовая и на ней
>стоит mysql, так там клиент mysql выдает именно что то через
>сокет TCP.
>
>а если еще дальше смотреть то проблема в opencms - этой системе
>требуется mysql, так на виндовой она поставилась, а на freebsd пишет
>что не может подсоедениться к mysql. Вот я и подумал что
>дело может быть в том, что mysqld не висит на tcp
>сокете... хм...
проблема выросла из отсутствия элементарных знаний TCP/IP и технологии
клиент <-> серверэто ж какую ахинею вы тут дружно вынесли на всеобщее оборзение, один
хоть более менее понимал что делает.- мне нужно не через сокет, а через tcp/ip (хинт)
Лично я прекрасно понял, что под сокетом человек имел ввиду UNIX sockets, а под TCP/IP - протокол TCP/IP, в котором тоже есть понятие сокетов. Да, наверное не совсем грамотно выражаемся. С удовольствием выслушую мнение профессионала.
>Лично я прекрасно понял, что под сокетом человек имел ввиду UNIX sockets,
>а под TCP/IP - протокол TCP/IP, в котором тоже есть понятие
>сокетов. Да, наверное не совсем грамотно выражаемся. С удовольствием выслушую мнение
>профессионала.sorry, вопросов нет.
PS. Чем дальше, тем больше вопросов на которые НЕ ПОНЯТНО как отвечать кроме
как отсылать к теории: одному нужен форум без CGI... , другому TCP/IP без сокетов :)))
>проблема выросла из отсутствия элементарных знаний TCP/IP и технологии
>клиент <-> сервер
>это ж какую ахинею вы тут дружно вынесли на всеобщее оборзение, одинНе знаю о чем ты, но клиентские библиотеки MySQL устроены таким образом, что передавая функции connect бибилиотеке MySQL параметр host = localhost она(библиотека) осуществляет соединение с сервером посредством UNIX сокета, а не TCP сокета.
Проверено на:
sinitsa /home/sinitsa % uname -a
FreeBSD 4.10-RELEASE-p2 FreeBSD 4.10-RELEASE-p2 #0: Mon Aug 16 11:00:30 GMT 2004 root@alex.sintisyn.ru:/usr/src/sys/compile/SINITSYN i386
sinitsa /home/sinitsa % pkg_info|grep mysql
mysql-client-4.0.20 Multithreaded SQL database (client)
mysql-server-4.0.20 Multithreaded SQL database (server)
Все нормально. Тогда как я и говорил:
mysql -h 127.0.0.1 -p
подключится через TCP/IP, а не сокет.