Снос и установка mysql на RH-линуксы

Discussion in 'PHP' started by lukmus, 3 Feb 2010.

  1. lukmus

    lukmus Elder - Старейшина

    Joined:
    18 Nov 2009
    Messages:
    366
    Likes Received:
    115
    Reputations:
    23
    Снес старую использовавшуюся для экспериментов mysql установил заново.
    первый запуск:
    Code:
    # mysql
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
    [root@VBOXCOR mysql]# cat /etc/my.cnf
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    old_passwords=1
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
    [ndbd]
    connect-string="nodeid=2;host=localhost:1186"
    [ndb_mgm]
    connect-string="host=localhost:1186"
    [root@VBOXCOR mysql]# pwd
    /var/lib/mysql
    [root@VBOXCOR mysql]# mksock mysql.sock
    [root@VBOXCOR mysql]# ls
    ibdata1  ib_logfile0  ib_logfile1  mysql  mysql.sock  test
    [root@VBOXCOR mysql]# chmod 0777 mysql.sock
    [root@VBOXCOR mysql]# mysql
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)
    [root@VBOXCOR mysql]# service mysqld start
    Запускается MySQL:                                         [  OK  ]
    
    менял в конфиге socket=/tmp/mysql.sock но та же фигня.
     
    #1 lukmus, 3 Feb 2010
    Last edited: 3 Feb 2010
  2. krypt3r

    krypt3r Elder - Старейшина

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Что в логах после запуска демона пишут и с какими правами создается mysql.sock?
     
  3. lukmus

    lukmus Elder - Старейшина

    Joined:
    18 Nov 2009
    Messages:
    366
    Likes Received:
    115
    Reputations:
    23
    нет, но я думаю права 777 всяка не запретят доступ никому к сокету
     
  4. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    lukmus Создавать самому сокет - НЕ надо. Какие права и кто владелец у папки /var/lib/mysql. Что выводится в логе - /var/log/mysqld.log?

    З.Ы. Как вы вообще собираетесь подключаться, если мускуль не был запущен?
    З.Ы.Ы. Вы уверены, что у вас кластер и запущен соответствующий демон? Это я про раскомментированные строки в разделе[ndbd]
     
    _________________________
  5. lukmus

    lukmus Elder - Старейшина

    Joined:
    18 Nov 2009
    Messages:
    366
    Likes Received:
    115
    Reputations:
    23
    Code:
    drwxr-xr-x.  4 mysql      mysql      4096 Фев  3 18:20 mysql
    Code:
    service mysqld restart
    Останавливается MySQL:                                     [  OK  ]
    Запускается MySQL:                                         [  OK  ]
    [root@VBOXCOR /]# mysql
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
    [root@VBOXCOR /]# cat /var/log/mysqld.log
    Version: '5.1.42'  socket: '/tmp/mysql.sock'  port: 3306  Source distribution
    100203 18:38:18 [Note] /usr/libexec/mysqld: Normal shutdown
    
    100203 18:38:18 [Note] Event Scheduler: Purging the queue. 0 events
    100203 18:38:18  InnoDB: Starting shutdown...
    100203 18:38:20  InnoDB: Shutdown completed; log sequence number 0 44233
    100203 18:38:20 [Note] /usr/libexec/mysqld: Shutdown complete
    
    100203 18:38:21 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
    100203 18:38:25 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
    100203 18:38:26 [Note] Plugin 'ndbcluster' is disabled.
    100203 18:38:29  InnoDB: Started; log sequence number 0 44233
    100203 18:38:29 [Note] Event Scheduler: Loaded 0 events
    100203 18:38:29 [Note] /usr/libexec/mysqld: ready for connections.
    Version: '5.1.42'  socket: '/tmp/mysql.sock'  port: 3306  Source distribution
    
    iptables вырублен.
     
  6. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    lukmus Вас ничуть не смущают строчки
    Уточняю - сокет создается в одном месте, а mysql подключается в другое.

    Укажите явно все пути, например так:
    Code:
    [client]
    socket=/tmp/mysql.sock
    [mysqld]
    datadir=/var/lib/mysql
    socket=/tmp/mysql.sock
    user=mysql
    old_passwords=1
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
    [ndbd]
    connect-string="nodeid=2;host=localhost:1186"
    [ndb_mgm]
    connect-string="host=localhost:1186"
    
    И проверьте права на сокет. Естественно мускуль надо будет перезагрузить
     
    _________________________