
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
28.07.2014, 03:03:30
|
|||
|---|---|---|---|
|
|||
Креш таблички, как полечить autoincrement? |
|||
|
#18+
В общем, уважаемое сообщество, прошу совета ибо гугль не знает. После креша (по хардварным причинам) таблички сделал Myisamchk, и все вроде пучком. Через денек заметил странные записи - поле ключа, которое автоинкремент имеет какое то бешенное значение. Записей в табличку уже накидали, и бог его знает какая на нем логика висит, но то что я вижу (пхп) частенько болеет от таких значений. Имеем пока вот что: forum# myisamchk -dvv /var/db/mysql/dust/inposts.MYI MyISAM file: /var/db/mysql/dust/inposts.MYI Record format: Packed Character set: cp1251_general_ci (51) File-version: 1 Creation time: 2012-02-09 16:52:26 Recover time: 2014-07-27 22:20:51 Status: checked Auto increment key: 1 Last value: 44848048511114 Data records: 455520 Deleted blocks: 0 Datafile parts: 455520 Deleted data: 0 Datafile pointer (bytes): 6 Keyfile pointer (bytes): 6 Datafile length: 260307612 Keyfile length: 40052736 Max datafile length: 281474976710654 Max keyfile length: 288230376151710719 Recordlength: 1192 Вопрос - как полечить такое вот дело? Ну кроме как ручным анализом этой таблицы - там несколько сот тысяч записей, я пока не готов лопатить ее... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.07.2014, 11:15:58
|
|||
|---|---|---|---|
Креш таблички, как полечить autoincrement? |
|||
|
#18+
Dustя вижу (пхп) частенько болеет от таких значений Dustкак полечить такое вот дело?А сфига ты здорового-то лечишь? больного лечи, тогда толк будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.07.2014, 12:05:46
|
|||
|---|---|---|---|
Креш таблички, как полечить autoincrement? |
|||
|
#18+
Dust, изменить то само текущее значение autoincrement можно, это есть в документации. но вот что вы будете делать с остальными записями и всеми записями ссылающимися на них ? может оказаться не так просто. поэтому вам и предлагают считать эту ситуацию нормальной и ничего не лечить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.07.2014, 12:46:05
|
|||
|---|---|---|---|
Креш таблички, как полечить autoincrement? |
|||
|
#18+
Dust, А есть ссылки на этот ключ в других или в этой же таблицах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.07.2014, 16:17:34
|
|||
|---|---|---|---|
|
|||
Креш таблички, как полечить autoincrement? |
|||
|
#18+
Если нет связи автоинкремента с другими записями по логике схемы БД. То если смущают большие значения автоинкрементального поля. Я бы сделал так: 1. создал таблицу create table table_new like table_old 2. перезалил в нее записи, но без поля автоинкремента: insert into table_new (field2,field3,... ) select field2,filed3,... from table_old 3. переименовал бы таблицы table_old -> table_bed , table_new -> table_old ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.07.2014, 17:28:40
|
|||
|---|---|---|---|
|
|||
Креш таблички, как полечить autoincrement? |
|||
|
#18+
netwind, Первая идея была поменять autoincrement на какое-то нормальное значение+ запас на те записи, которые были добавлены уже с большим значением. Запрос alter table inposts AUTO_INCREMENT=500000 выполняется успешно, но значение не изменяется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&mobile=1&tid=1834444]: |
0ms |
get settings: |
5ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
24ms |
get tp. blocked users: |
1ms |
| others: | 244ms |
| total: | 343ms |

| 0 / 0 |
