LINUX.ORG.RU

История изменений

Исправление nerve, (текущая версия) :

подолгу пытаться отправить каждый insert - не вариант, так как insert-ов может быть много, а скрипт должен отработать вовремя.

пока сделал так: если insert не проходит, то добавляем фанные в файл.

if ! echo "INSERT INTO table (value1,value2) \
           VALUES ('${Array[$i]}', '$Date');" \
   | mysql -uuser -ppas -h some.host database
  then
    echo "${Array[$i]} $Date" >> deferred
fi
при старте скрипта очередной раз проверяем - пустой ли файл и если нет, то пытаемся отправить из него данные. если отправка успешна - подчищаем файл.
if [ -s "deferred" ]; then
  while read -r val1 val2; do
    if echo "INSERT INTO orders (value1,value2) \
             VALUES ('$val1', '$val2');" \
       | mysql -usvn -psvn -h some.host database
      then
       sed -i '1d' deferred
    fi
  done < deferred
fi

Исходная версия nerve, :

подолгу пытаться отправить каждый insert - не вариант, так как insert-ов может быть много, а скрипт должен отработать вовремя.

пока сделал так: если insert не проходит, то добавляем фанные в файл.

if ! echo "INSERT INTO table (value1,value2) \
           VALUES ('${Array[$i]}', '$Date');" \
   | mysql -uuser -ppas -h some.host database
  then
    echo "${Array[$i]} $Date" >> deferred
fi
при старте скрипта очередной раз проверяем - пустой ли файл и если нет, то пытаемся отправить из него данные. если отправка успешна - подчищаем файл.
if [ -s "deferred" ]; then
  while read -r val1 val2; do
    if echo "INSERT INTO orders (value1,value2) \
             VALUES ('$val1', '$val2');" \
       | mysql -usvn -psvn -h qnap.kh.ektos lunchorder
      then
       sed -i '1d' deferred
    fi
  done < deferred
fi