URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 58908
[ Назад ]

Исходное сообщение
"Как изменить папку баз в MySql"

Отправлено Doc , 05-Авг-05 09:33 
нигде немогу нати в настройках....

p.s. ставилось из rpm пакета


Содержание

Сообщения в этом обсуждении
"Как изменить папку баз в MySql"
Отправлено Дениска , 05-Авг-05 09:50 
>нигде немогу нати в настройках....
>
>p.s. ставилось из rpm пакета
--datadir ключ у демона, аналог есть в my.cnf


"Как изменить папку баз в MySql"
Отправлено Doc , 05-Авг-05 11:24 
>>нигде немогу нати в настройках....
>>
>>p.s. ставилось из rpm пакета
>--datadir ключ у демона, аналог есть в my.cnf


[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
    
[mysql.server]
user=mysql
basedir=/var/lib

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


ключа нету....


#!/bin/bash
#
# mysqld    This shell script takes care of starting and stopping
#        the MySQL subsystem (mysqld).
#
# chkconfig: - 78 12
# description:    MySQL database server.
# processname: mysqld
# config: /etc/my.cnf
# pidfile: /var/run/mysqld/mysqld.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network


prog="MySQL"

datadir="/var/lib/mysql"

start(){
    touch /var/log/mysqld.log
    chown mysql.mysql /var/log/mysqld.log
    chmod 0640 /var/log/mysqld.log
    if [ ! -d $datadir/mysql ] ; then
        action $"Initializing MySQL database: " /usr/bin/mysql_install_db
        ret=$?
        chown -R mysql.mysql $datadir
        if [ $ret -ne 0 ] ; then
            return $ret
        fi
    fi
    chown -R mysql.mysql $datadir
    chmod 0755 $datadir
    /usr/bin/safe_mysqld  --defaults-file=/etc/my.cnf >/dev/null 2>&1 &
    ret=$?
        # Spin for a maximum of ten seconds waiting for the server to come up
    if [ $ret -eq 0 ]; then
            for x in 1 2 3 4 5 6 7 8 9 10; do
            if [ -n "`/usr/bin/mysqladmin ping 2> /dev/null`" ]; then
                    break;
            else
                    sleep 1;
            fi
            done
            if !([ -n "`/usr/bin/mysqladmin ping 2> /dev/null`" ]); then
                    echo "Timeout error occurred trying to start MySQL Daemon."
                    action $"Starting $prog: " /bin/false
            else
                    action $"Starting $prog: " /bin/true
            fi
    else
            action $"Starting $prog: " /bin/false
    fi
    [ $ret -eq 0 ] && touch /var/lock/subsys/mysqld
    return $ret
}

stop(){
        /bin/kill `cat /var/run/mysqld/mysqld.pid  2> /dev/null ` > /dev/null 2>&1
    ret=$?
    if [ $ret -eq 0 ]; then
        action $"Stopping $prog: " /bin/true
    else
            action $"Stopping $prog: " /bin/false
    fi
    [ $ret -eq 0 ] && rm -f /var/lock/subsys/mysqld
    [ $ret -eq 0 ] && rm -f $datadir/mysql.sock
    return $ret
}

restart(){
    stop
    start
}

condrestart(){
    [ -e /var/lock/subsys/mysqld ] && restart || :
}

# See how we were called.
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  status)
    status mysqld
    ;;
  restart)
    restart
    ;;
  condrestart)
    condrestart
    ;;
  *)
    echo $"Usage: $0 {start|stop|status|condrestart|restart}"
    exit 1
esac

exit $?


скрип даемона
datadir="/var/lib/mysql" - вот строка ка я понимаю отвечающее за местонохождение базы если я её меняю на datadir="/home/mysql" то после запуска он попросту создаёт новые базы в /var/lib/mysql , а юазы из /home/mysql/ неподцепляет , в чём может быть дело?


"Как изменить папку баз в MySql"
Отправлено Дениска , 05-Авг-05 11:31 
где меняешь эту строку? в скрипте или в my.cnf?
в скрипте прописано, как ты видишь "в случае отсутсвия datadir создать там таблицы необходимые для работы". ты в обоих местах меняешь?

"Как изменить папку баз в MySql"
Отправлено Doc , 05-Авг-05 11:33 
>где меняешь эту строку? в скрипте или в my.cnf?
>в скрипте прописано, как ты видишь "в случае отсутсвия datadir создать там
>таблицы необходимые для работы". ты в обоих местах меняешь?


нет только в демоне - в my.cnf её ведь нету...


"Как изменить папку баз в MySql"
Отправлено Дениска , 05-Авг-05 11:37 
>нет только в демоне - в my.cnf её ведь нету...
ты привел отрывок my,cnf - она там есть.
и привел скрипт, запускающий mysql- там она тоже есть. где меняешь то?



"Как изменить папку баз в MySql"
Отправлено Doc , 05-Авг-05 11:39 
>>нет только в демоне - в my.cnf её ведь нету...
>ты привел отрывок my,cnf - она там есть.
>и привел скрипт, запускающий mysql- там она тоже есть. где меняешь то?
>


datadir=/var/lib/mysql

вот Я лупизень слепой - не заметил!!!!


"Как изменить папку баз в MySql"
Отправлено Doc , 05-Авг-05 11:46 
>>>нет только в демоне - в my.cnf её ведь нету...
>>ты привел отрывок my,cnf - она там есть.
>>и привел скрипт, запускающий mysql- там она тоже есть. где меняешь то?
>>
>
>
>datadir=/var/lib/mysql
>
>вот Я лупизень слепой - не заметил!!!!


изменил везеде (даже socet)
а всёрано не стартует...

A mysql process alredy exists at


"Как изменить папку баз в MySql"
Отправлено Дениска , 05-Авг-05 11:54 
>A mysql process alredy exists at
неконструктивный диалог получается. давайте-ка man mysqld сделаем.


"Как изменить папку баз в MySql"
Отправлено Doc , 05-Авг-05 12:17 
>>A mysql process alredy exists at
>неконструктивный диалог получается. давайте-ка man mysqld сделаем.


вроде понял всё правельно и мануале таежн написанно

в демоне меню datadir="/var/lib/mysql" на datadir="/home/mysql"

в my.cnf
[mysqld]
#datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysql.sock
datadir=/home/mysql
socket=/home/mysql/mysql.sock    


чего ему ещё надо?


"Как изменить папку баз в MySql"
Отправлено co6aka , 05-Авг-05 15:29 
Если дальше ковыряться лень, то сделай ссылку с /var/lib/mysql на /home/mysql

"Как изменить папку баз в MySql"
Отправлено Doc , 05-Авг-05 21:03 
>Если дальше ковыряться лень, то сделай ссылку с /var/lib/mysql на /home/mysql


во! всё гинеальное просто ... я об этом как-то не подумал


"Как изменить папку баз в MySql"
Отправлено ыыыыыы , 14-Мрт-10 14:38 
>нигде немогу нати в настройках....
>
>p.s. ставилось из rpm пакета

меняешь в my.ini переменную datadir и все. Только по новому адресу перепиши все ситемыне базы, а то служба не запустится.