101 (изменено: Dima-os, 2012-01-23 01:40:40)

Re: MySQL и phpMyAdmin обьясните чайнику

Объясните чайнику пожалуйста что за беда.

При импорте Баз данных файла  бак купа (magento.sql) через phpMyAdmin

Выдало ошибку

SQL-запрос:

--
-- Ограничения внешнего ключа таблицы `catalog_eav_attribute`
--
 ALTERTABLE`catalog_eav_attribute` 

ADDCONSTRAINT`FK_CATALOG_EAV_ATTRIBUTE_ATTRIBUTE_ID_EAV_ATTRIBUTE_ATTRIBUTE_ID`FOREIGNKEY 

(`attribute_id`)REFERENCES`eav_attribute` (`attribute_id`)ONDELETECASCADEONUPDATECASCADE ;


 
Ответ MySQL: 
#1452 - Cannot add or update a child row: a foreign key constraint fails (`magento`.<result 2 

when explaining filename '#sql-89c_ca'>, CONSTRAINT 

`FK_CATALOG_EAV_ATTRIBUTE_ATTRIBUTE_ID_EAV_ATTRIBUTE_ATTRIBUTE_ID` FOREIGN KEY (`attribute_id`) 

REFERENCES `eav_attribut)

http://s014.radikal.ru/i327/1201/5e/5b8fd8f0ef60.jpg


Захожу в эту таблицу всё зелёное невижу красного предупреждения.
Сайт вроде работает.

http://s018.radikal.ru/i508/1201/28/d1fc4c0c7835.jpg

Что вызвало эту ошибку?
И в дальнейшем как может повлиять на работу сайта?

Заранее спасибо за ответ.

102

Re: MySQL и phpMyAdmin обьясните чайнику

Данный запрос создает связь таблиц catalog_eav_attribute и eav_attribute по полю attribute_id (обеих таблиц). Название этой связи будет FK_CATALOG_EAV_ATTRIBUTE_ATTRIBUTE_ID_EAV_ATTRIBUTE_ATTRIBUTE_ID. Выражение ON DELETE CASCADE ON UPDATE CASCADE - означает, что при удалении или обновлении строк в родительской таблице, такие же изменения будут произведены и в связанной таблице.

Проверьте, чтобы таблицы catalog_eav_attribute и eav_attribute существовали и имели тип InnoDB.

Если catalog_eav_attribute и eav_attribute - это одна и та же таблица, то данная связь смысла не имеет и на работу сайта никак не скажется.

103 (изменено: Dima-os, 2012-01-23 21:13:17)

Re: MySQL и phpMyAdmin обьясните чайнику

Такие таблицы существуют. (catalog_eav_attribut )    (eav_attribute)
А как проверить что они используют таблицы INNODB
Не чего не написано какие они таблицы используют.

Тут такие навароты я тут боюсь что ткнуть не то.

Я же выставил в файле my.ini   таблицы использовать 

default-storage-engine=INNODB

Я просто снёс xampp и установил ZendServer и сайт переносил и базу данных импортировал.

smile 
eav_attribute
http://s011.radikal.ru/i317/1201/30/1300ba4bafdd.jpg
...........................................................
.........................................................................................................................
catalog_eav_attribute
http://s018.radikal.ru/i510/1201/4c/6c87fc85e64a.jpg

Заранее спасибо за ответ.

104

Re: MySQL и phpMyAdmin обьясните чайнику

Выберите вверху базу данных magneto и увидите список всех таблиц, одно из полей будет содержать тип таблицы.

Если не получится разобраться, то сделайте дамп этих двух таблиц и отошлите его на hanut@php-myadmin.ru со ссылкой на эту тему.

105 (изменено: Dima-os, 2012-01-23 23:06:36)

Re: MySQL и phpMyAdmin обьясните чайнику

В этом то и проблема, что раньше показывало тип таблиц.

А сей час с подключением и обновлением таблиц для PMA
Нету надписи какие таблицы они используют.

Блин я же расширил возможности  phpMyAdmin
Теперь для профи интерфейс и тому подобное.

http://s018.radikal.ru/i515/1201/eb/171e5ed4a405.jpg


Дамп этих двух таблиц   это экспорт надо сделать двух таблиц?


Сделал в горизонте.
Тоже не отображает тип таблиц что за беда вроде все по умолчанию все стоит в  phpMyAdmin не чего не менял.

http://s12.radikal.ru/i185/1201/97/d99c1692cbe8.jpg

Заранее спасибо за ответ.

106

Re: MySQL и phpMyAdmin обьясните чайнику

Во что появилось нажал на клавишу Структура
Вам  Hanut это о чем то говорит что то здесь видно.?
Структура
eav_attribute "Eav Attribute"

http://s018.radikal.ru/i528/1201/16/518b3220ada7.jpg

Структура
catalog_eav_attribute "Catalog EAV Attribute Table"

http://s018.radikal.ru/i509/1201/ba/2aa4ca15d557.jpg

Заранее спасибо за ответ.

107

Re: MySQL и phpMyAdmin обьясните чайнику

Поправьте конфигурационную директиву в config.inc.php:

$cfg['PropertiesNumColumns'] = 1;

Да, дамп делается на странице экспорта.

108 (изменено: Dima-os, 2012-01-24 00:20:57)

Re: MySQL и phpMyAdmin обьясните чайнику

\phpMyAdmin\config.inc.php

Там стояло = 2

$cfg['PropertiesNumColumns'] = 2;

Я переправил = 1

$cfg['PropertiesNumColumns'] = 1;

Это что дает если не трудно в двух словах объяснить.

Как же мне увидеть в этом интерфейсе.  Какой   тип написания используют таблицы.
Какой то тип     smallint
А где  INNODB мне увидеть?

Мне высылать дамб, или эта проблема решена?
Заранее спасибо за ответ.

109

Re: MySQL и phpMyAdmin обьясните чайнику

Dima-os сказал:

Как же мне увидеть в этом интерфейсе.  Какой   тип написания используют таблицы.

Вы переправили директиву и теперь выбрав базу данных увидите столбец типа таблиц.

110 (изменено: Dima-os, 2012-01-24 14:31:19)

Re: MySQL и phpMyAdmin обьясните чайнику

Hanut
Вы гений.
А для чего в конфигурационном файле стоит 2 не показывает тип таблиц которые используют.
Почему выскочила ошибка вроде все используют INNODB, кроме  двух (catalogsearch_fulltext) почему она использует MyISAM не пойму. В xampp  стояли INNODB

И ещё одна catalog_product_index_price_downlod_tmp использует MEMORY

http://s017.radikal.ru/i437/1201/9c/7740d672e0a2.jpg



кроме двух (catalogsearch_fulltext)

http://s001.radikal.ru/i193/1201/c2/3f89f6eb8329.jpg

catalog_product_index_price_downlod_tmp

http://s018.radikal.ru/i523/1201/b7/70c0d5739141.jpg

Спасибо за ответ.

111

Re: MySQL и phpMyAdmin обьясните чайнику

Dima-os сказал:

А для чего в конфигурационном файле стоит 2 не показывает тип таблиц которые используют.

Если в PropertiesNumColumns стоит значение больше 1, то таблица формируется в более компактном виде.

Судя по названию таблицы catalogsearch_fulltext она используется для полнотекстового поиска, который работает только для таблиц типа MyISAM. Поэтому здесь все правильно.

Почему вышла ошибка - не знаю. Вышлите дамп таблиц, чтобы я мог их посмотреть.

112 (изменено: Dima-os, 2012-01-24 17:57:14)

Re: MySQL и phpMyAdmin обьясните чайнику

Отправил на mail.google.com

Заранее спасибо за ответ.

113

Re: MySQL и phpMyAdmin обьясните чайнику

Проблема с данными. Таблицы не получается связать, потому что у них разное количество строк и не совпадают идентификаторы связываемого поля. Если очистить обе таблицы, то связь устанавливается.

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

Этот запрос установки связи можно выполнить только при полном соответствии идентификаторов таблиц.

ALTER TABLE `catalog_eav_attribute` 
ADD CONSTRAINT `FK_CATALOG_EAV_ATTRIBUTE_ATTRIBUTE_ID_EAV_ATTRIBUTE_ATTRIBUTE_ID` FOREIGN KEY (`attribute_id`) REFERENCES `eav_attribute` (`attribute_id`) ON DELETE CASCADE ON UPDATE CASCADE ;

114 (изменено: Dima-os, 2012-01-24 18:00:27)

Re: MySQL и phpMyAdmin обьясните чайнику

А может быть вызвана ошибка я устанавливал модуля примерно12 штук.
Потом сайт сломался. я взял старый бак куп и сайт архивированный и перенес на новый сервер .
Но в папке  (/community) остались закаченные новые модуля.    /downloader/.cache/community

Сайт работает всё зелёное в базах .
Я гришу на эту проблему.
Заранее спасибо за ответ.

115

Re: MySQL и phpMyAdmin обьясните чайнику

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

116 (изменено: Dima-os, 2012-01-24 21:20:10)

Re: MySQL и phpMyAdmin обьясните чайнику

Я через Magento Connect. устанавливал много модулей у меня сайт зависал.
Если модуль не подходит к версии. Magento-1.6.1.0
Сайт выкидывает предупреждения:

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

Приходится  флаг (maintenance.flag) удалять из корня сайта, и кеш весь выкидывать /var/cache/mage--0........
И сессию всю удалять, дополнительно выкидывал файлы  /var/session/файлы....номера...0uu7654
Тогда сайт начинает заново работать.

Но в базу они пишут свои таблицы.
В этом не схождения видать.
Это скорей всего остатки таблиц от модулей некорректно установленных.

Спасибо за объяснения.
Особенно за то что я теперь вижу какие таблицы используются.

117 (изменено: Dima-os, 2012-01-30 14:35:11)

Re: MySQL и phpMyAdmin обьясните чайнику

Я понял в чем проблема.
Я создавал Дамп (бак куп) для Magento, через phpMyAdmin.

Как правильно создать Дамп (бак куп) базы данных в Magento


При переносе базы данных Magento ни в коем случае не пользуйтесь PHP myAdmin’ом, иначе вы рискуете остаться без внешних ключей (ограничений).
Так же не советую делать дампы разными менеджарами баз данных типа EMS или Front. Вы потеряете очень много времени.
Лучше всего если вы сделаете дамп самим движком Magento! Это 100% проверено, 100% быстро, и дамп останется еще и на сервере (на всякий случай).
В админке зайдите сюда admin/system_backup и просто нажмите кнопку Create Backup!
Заливать (или восстанавливать) я бы посоветовал напрямую по SSH командой mysql либо, как обычно делаю при помощи MySQL FRONT.

Внимание!!! Всегда используйте кодировку UTF-8!!!