ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [mdk-re] как восстановить базу mysql
@ 2002-04-09  2:16 Любимов А.В.
  2002-04-09  3:51 ` Любимов А.В.
  0 siblings, 1 reply; 11+ messages in thread
From: Любимов А.В. @ 2002-04-09  2:16 UTC (permalink / raw)
  To: м-р

пытался тут зарядить базу документами и напоролся на гадость.
1) при загрузке таблицы из файла mysql молча падает.
дело в том, что я целые html страницы в поля  гружу. и переопределяю разделители столбцов и строк.
2) теперь несмотря на наличие 55 записей с подряд идущими значениями поля id
select max(id)+1 возвращает не 56, а 9 !!!
mycheck чего то не помогает. 

вопрос 1

как бы мне индексы восстановит и вообще привести базу в божеский вид?
какие утилиты запустить и с какими ключами?

вопрос 2

Как загружаются текстовые объекты в mysql?
в постгресе есть вариант с загрузкой отдельного поля из файла, а тут как?


-- 
С уважением,Любимов А.В.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [mdk-re] как восстановить базу mysql
  2002-04-09  2:16 [mdk-re] как восстановить базу mysql Любимов А.В.
@ 2002-04-09  3:51 ` Любимов А.В.
  2002-04-09 15:11   ` Sergey Vlasov
  0 siblings, 1 reply; 11+ messages in thread
From: Любимов А.В. @ 2002-04-09  3:51 UTC (permalink / raw)
  To: mandrake-russian

отчасти разобрался.
похоже, восстановить базу не удастся, потому что она и не ломалась :)
сменил тип столбца с varchar на интегер  и сразу получил ожидаемое поведение функции max.
однако вопрос с загрузкой больших текстовых блоков остался.
каким образом можно запихнуть в ячейку большой текстовой кусок (наверное все таки из файла)?

-- 
С уважением,Любимов А.В.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [mdk-re] как восстановить базу mysql
  2002-04-09  3:51 ` Любимов А.В.
@ 2002-04-09 15:11   ` Sergey Vlasov
  2002-04-09 18:40     ` Любимов А.В.
  0 siblings, 1 reply; 11+ messages in thread
From: Sergey Vlasov @ 2002-04-09 15:11 UTC (permalink / raw)
  To: mandrake-russian

On Tue, Apr 09, 2002 at 03:50:27 +0400, Любимов А.В. wrote:
> каким образом можно запихнуть в ячейку большой текстовой кусок (наверное
> все таки из файла)?

Отдельное поле - функцией LOAD_FILE (потребуется привилегия file).  Все
поля таблицы - LOAD DATA INFILE (тут можно и через LOCAL).

В принципе можно засунуть значение и напрямую в запрос, но длина запроса
ограничена параметром max_allowed_packet.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [mdk-re] как восстановить базу mysql
  2002-04-09 15:11   ` Sergey Vlasov
@ 2002-04-09 18:40     ` Любимов А.В.
  2002-04-09 20:28       ` Sergey Vlasov
  0 siblings, 1 reply; 11+ messages in thread
From: Любимов А.В. @ 2002-04-09 18:40 UTC (permalink / raw)
  To: mandrake-russian

> Отдельное поле - функцией LOAD_FILE (потребуется привилегия file).  Все

спасибо. как раз такое и искал.

> поля таблицы - LOAD DATA INFILE (тут можно и через LOCAL).
кстати LOCAL не проходит. говорит, что  версия мала.
а попытка скормить ему удручающий по размерам файл привела к стабильному суициду mysqld

> В принципе можно засунуть значение и напрямую в запрос, но длина запроса
> ограничена параметром max_allowed_packet.
да вот здесь с кавычками проблема.

а можно как нибудь переменными из PHP вставить?
вот так примерно

temp=implode(file("test.txt"));

insert into pages (data)
values(:temp)



-- 
С уважением,Любимов А.В.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [mdk-re] как восстановить базу mysql
  2002-04-09 18:40     ` Любимов А.В.
@ 2002-04-09 20:28       ` Sergey Vlasov
  2002-04-09 20:43         ` Любимов А.В.
  2002-04-10  1:05         ` [mdk-re] вставка бинарных данных в таблицу Любимов А.В.
  0 siblings, 2 replies; 11+ messages in thread
From: Sergey Vlasov @ 2002-04-09 20:28 UTC (permalink / raw)
  To: mandrake-russian

On Tue, 9 Apr 2002 18:39:57 +0400
Любимов А.В. <avl@l14.ru> wrote:

> 
> > Отдельное поле - функцией LOAD_FILE (потребуется привилегия file).  Все
> 
> спасибо. как раз такое и искал.
> 
> > поля таблицы - LOAD DATA INFILE (тут можно и через LOCAL).
> кстати LOCAL не проходит. говорит, что  версия мала.

А какая именно версия?

> а попытка скормить ему удручающий по размерам файл привела к стабильному суициду mysqld

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

> > В принципе можно засунуть значение и напрямую в запрос, но длина запроса
> > ограничена параметром max_allowed_packet.
> да вот здесь с кавычками проблема.
> 
> а можно как нибудь переменными из PHP вставить?

Не знаю насчет PHP, но из C я туда вставлял вообще бинарные данные,
только завернув их через mysql_real_escape_string.  Видимо, в PHP надо
произвести аналогичную операцию.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [mdk-re] как восстановить базу mysql
  2002-04-09 20:28       ` Sergey Vlasov
@ 2002-04-09 20:43         ` Любимов А.В.
  2002-04-09 20:55           ` Sergey Vlasov
  2002-04-10  1:05         ` [mdk-re] вставка бинарных данных в таблицу Любимов А.В.
  1 sibling, 1 reply; 11+ messages in thread
From: Любимов А.В. @ 2002-04-09 20:43 UTC (permalink / raw)
  To: mandrake-russian

On Tue, 9 Apr 2002 20:27:59 +0400
"Sergey Vlasov" <vsu@mivlgu.murom.ru> wrote:

> On Tue, 9 Apr 2002 18:39:57 +0400
> Любимов А.В. <avl@l14.ru> wrote:
> 
> > 
> > > Отдельное поле - функцией LOAD_FILE (потребуется привилегия file). 
> > > Все
> > 
> > спасибо. как раз такое и искал.
> > 
> > > поля таблицы - LOAD DATA INFILE (тут можно и через LOCAL).
> > кстати LOCAL не проходит. говорит, что  версия мала.
> 
> А какая именно версия?

# rpm -q MySQL-server
MySQL-server-3.23.49-alt2

> 
> > а попытка скормить ему удручающий по размерам файл привела к
> > стабильному суициду mysqld
> 
> Так если не слишком древняя версия - надо бы баг-репорт по этому поводу
> написать...

я не уверен, что прав.

LOAD DATA  INFILE 'file_name.txt'    INTO TABLE tbl_name   FIELDS   TERMINATED BY '+++'  LINES TERMINATED BY '---';

поскольку конец строки и табуляция мне нужны самому, я переопределил их и вот результат.
молча падаем. раз десять повторил, пока дошло, что это не случайность. :)


> только завернув их через mysql_real_escape_string.  Видимо, в PHP надо
> произвести аналогичную операцию.

поковыряюсь, спасибо.


-- 
С уважением,Любимов А.В.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [mdk-re] как восстановить базу mysql
  2002-04-09 20:43         ` Любимов А.В.
@ 2002-04-09 20:55           ` Sergey Vlasov
  2002-04-09 21:23             ` Sergiy Chekalin
  2002-04-09 21:29             ` Любимов А.В.
  0 siblings, 2 replies; 11+ messages in thread
From: Sergey Vlasov @ 2002-04-09 20:55 UTC (permalink / raw)
  To: mandrake-russian

On Tue, 9 Apr 2002 20:41:45 +0400
Любимов А.В. <avl@l14.ru> wrote:

> On Tue, 9 Apr 2002 20:27:59 +0400
> "Sergey Vlasov" <vsu@mivlgu.murom.ru> wrote:
> 
> > On Tue, 9 Apr 2002 18:39:57 +0400
> > Любимов А.В. <avl@l14.ru> wrote:
> > 
> > > 
> > > > Отдельное поле - функцией LOAD_FILE (потребуется привилегия file). 
> > > > Все
> > > 
> > > спасибо. как раз такое и искал.
> > > 
> > > > поля таблицы - LOAD DATA INFILE (тут можно и через LOCAL).
> > > кстати LOCAL не проходит. говорит, что  версия мала.
> > 
> > А какая именно версия?
> 
> # rpm -q MySQL-server
> MySQL-server-3.23.49-alt2
> 
> > 
> > > а попытка скормить ему удручающий по размерам файл привела к
> > > стабильному суициду mysqld
> > 
> > Так если не слишком древняя версия - надо бы баг-репорт по этому поводу
> > написать...
> 
> я не уверен, что прав.
> 
> LOAD DATA  INFILE 'file_name.txt'    INTO TABLE tbl_name   FIELDS   TERMINATED BY '+++'  LINES TERMINATED BY '---';
> 
> поскольку конец строки и табуляция мне нужны самому, я переопределил их и вот результат.
> молча падаем. раз десять повторил, пока дошло, что это не случайность. :)

Если даже это неправильно - сервер все равно не должен от этого падать.
Срочно в BTS.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [mdk-re] как восстановить базу mysql
  2002-04-09 20:55           ` Sergey Vlasov
@ 2002-04-09 21:23             ` Sergiy Chekalin
  2002-04-09 21:29             ` Любимов А.В.
  1 sibling, 0 replies; 11+ messages in thread
From: Sergiy Chekalin @ 2002-04-09 21:23 UTC (permalink / raw)
  To: mandrake-russian

On Tue, Apr 09, 2002 at 08:54:52PM +0400, Sergey Vlasov wrote:
> > # rpm -q MySQL-server
> > MySQL-server-3.23.49-alt2

У меня проблемы несколько иные, но  версия таже.

Вкратце. Сервер склонен к суициду. Но !!! Это происходит довольно
 неожиданно и в разных ситуациях. Эспериментальным путем вычислил,
что слетов нет только в том случае если использую исключительно тип
таблиц ISAM (который бы вроде уже объявлен depricated, но тем не
менее с ним проблем нет), a вот если начинаю использовать родной
MyISAM, быть беде, сервер обязательно умрет, при чем это
случается в разных ситуациях и с разным ПО, трудно 100%
воспроизвести, но рано или поздно слетит. Проверено. С
ISAM базами сервер не умирал ни разу, скала.


> > я не уверен, что прав.

То же самое, все еще грешу на себя, хотя установки практически
по-умолчанию, разбавлены только рекомендуемыми из
/usr/share/doc/MySQL-3.23.49/*.cnf

> > молча падаем. раз десять повторил, пока дошло, что это не случайность. :)

Угу, знакомая ситуация, но у меня, подчеркиваю еще раз, слеты происходят исключительно в том случае
если пытаюсь использовать MyISAM-овские таблицы, со старыми ISAM
таблицами при тех же операциях cлетов НИ РАЗУ не было.

> Если даже это неправильно - сервер все равно не должен от этого падать.

В том то и дело, падать не должен.

> Срочно в BTS.

Думал, но как описать эту ситуацию, 100% рецепта для
воспроизведения дать ведь не могу. :(





^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [mdk-re] как восстановить базу mysql
  2002-04-09 20:55           ` Sergey Vlasov
  2002-04-09 21:23             ` Sergiy Chekalin
@ 2002-04-09 21:29             ` Любимов А.В.
  2002-04-09 21:33               ` [mdk-re] " Aleksey Novodvorsky
  1 sibling, 1 reply; 11+ messages in thread
From: Любимов А.В. @ 2002-04-09 21:29 UTC (permalink / raw)
  To: mandrake-russian

> Если даже это неправильно - сервер все равно не должен от этого падать.
> Срочно в BTS.

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

-- 
С уважением,Любимов А.В.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* [mdk-re] Re: [mdk-re] как восстановить базу mysql
  2002-04-09 21:29             ` Любимов А.В.
@ 2002-04-09 21:33               ` Aleksey Novodvorsky
  0 siblings, 0 replies; 11+ messages in thread
From: Aleksey Novodvorsky @ 2002-04-09 21:33 UTC (permalink / raw)
  To: mandrake-russian

Любимов А.В. wrote:

> > Если даже это неправильно - сервер все равно не должен от этого падать.
> > Срочно в BTS.
>
> не пускает bts. молча выдает опять логин, если не вводить логин, то ошибка, а если вводить -опять  все по новой без ошибок.
> кругом баги...
>

Напишите zerg@altlinux.ru

Rgrds, AEN




^ permalink raw reply	[flat|nested] 11+ messages in thread

* [mdk-re] вставка бинарных данных в таблицу
  2002-04-09 20:28       ` Sergey Vlasov
  2002-04-09 20:43         ` Любимов А.В.
@ 2002-04-10  1:05         ` Любимов А.В.
  1 sibling, 0 replies; 11+ messages in thread
From: Любимов А.В. @ 2002-04-10  1:05 UTC (permalink / raw)
  To: mandrake-russian

> > а можно как нибудь переменными из PHP вставить?
> 
> Не знаю насчет PHP, но из C я туда вставлял вообще бинарные данные,
> только завернув их через mysql_real_escape_string.  Видимо, в PHP надо
> произвести аналогичную операцию.

    $data = addslashes(fread(fopen($form_data, "r"), filesize($form_data)));

    $result=MYSQL_QUERY("INSERT INTO binary_data (bin_data)  VALUES ('$data')");

красота. в ПХП все так и есть...





-- 
С уважением,Любимов А.В.



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2002-04-10  1:05 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-04-09  2:16 [mdk-re] как восстановить базу mysql Любимов А.В.
2002-04-09  3:51 ` Любимов А.В.
2002-04-09 15:11   ` Sergey Vlasov
2002-04-09 18:40     ` Любимов А.В.
2002-04-09 20:28       ` Sergey Vlasov
2002-04-09 20:43         ` Любимов А.В.
2002-04-09 20:55           ` Sergey Vlasov
2002-04-09 21:23             ` Sergiy Chekalin
2002-04-09 21:29             ` Любимов А.В.
2002-04-09 21:33               ` [mdk-re] " Aleksey Novodvorsky
2002-04-10  1:05         ` [mdk-re] вставка бинарных данных в таблицу Любимов А.В.

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git