phpbar.de logo

Mailinglisten-Archive

InnoDB Tabellenproblem

InnoDB Tabellenproblem

Badran Farwati mysql-de_(at)_lists.bttr.org
Tue, 12 Mar 2002 20:38:50 +0100


--=====================_6215597==_.ALT
Content-Type: text/plain; charset="iso-8859-1"; format=flowed
Content-Transfer-Encoding: quoted-printable

Hallo!
mit dem program perror  [fehlernummer] kannst du jeden error abfragen.

ich nehme an dass du vor und nach dem loeschen ein index fuer das foreign=20
key angelegt hast? denn unter MySQL muss fuer jeden foreign key ein index=20
angelegt werden.
z.b
create table primary (id not null, ...., primary key(id)) type=3Dinnodb;
create table foreign (id int not null, id_primary int not null,=20
........,index pri_ind(id_primary), foreign key(id_primary) references=20
primary(id))type=3Dinnodb;

aber dann passiert folgendes: die indizes  der table  bleiben trotz=20
loecshen bestehen.
kapitel 7.5.11 Table and Index Structures vom MySQL Manual:

MySQL stores its data dictionary information of tables in `.frm' files in=20
database directories. But every InnoDB type table also has its own entry in=
=20
InnoDB internal data dictionaries inside the tablespace. When MySQL drops a=
=20
table or a database, it has to delete both a `.frm' file or files, and the=
=20
corresponding entries inside the InnoDB data dictionary. This is the reason=
=20
why you cannot move InnoDB tables between databases simply by moving the=20
`.frm' files, and why DROP DATABASE did not work for InnoDB type tables in=
=20
MySQL versions <=3D 3.23.43.
  hast vielleicht eine Version kleiner als 3.23.43?
ich hoffe ich liege richtig.
lg



At 15:00 12.03.2002 +0100, you wrote:
>Hallo Georg, hallo Liste,
>
>Danke erst mal - aber jetzt bin ich komplett durch den Wind. Die Tabelle
>bzw. die Datenbank in der der Fehler auftritt ist v=F6llig leer (zumindest
>stollte Sie das ja nach einem drop database xxx und create database xxx.
>Hab auch schon mal den MySQL Server neu gestartet - bringt nix der
>Fehler bleibt.
>
>Hat jemand =E4hnliche Probleme mit InnoDBs. Ich traus mich ja kaum zu
>sagen - ist ein Windows System ...
>
>Gru=DF
>
>Ulf
>
> > perror 121 =3D=3D>  121 =3D Duplicate key on write or update
>
>
>---
>Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
>-->>  http://www.4t2.com/mysql


----------
Macintosh for productivity
Linux for development
Windows for Solitaire

Badran Farwati
mailto: b.farwati_(at)_syria-net.net
mailto: b.farwati_(at)_chello.at
http://www.syria-net.net

----------


--=====================_6215597==_.ALT
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html>
Hallo!<br>
mit dem program perror&nbsp; [fehlernummer] kannst du jeden error
abfragen.<br><br>
ich nehme an dass du vor und nach dem loeschen ein index fuer das
f<font face=3D"Arial, Helvetica">oreign key angelegt hast? denn unter MySQL
muss fuer jeden foreign key ein index angelegt werden.<br>
</font>z.b<br>
create table primary (id not null, ...., primary key(id))
type=3Dinnodb;<br>
create table foreign (id int not null, id_primary int not null,
........,index pri_ind(id_primary), foreign key(id_primary) references
primary(id))type=3Dinnodb;<br><br>
aber dann passiert folgendes: die indizes&nbsp; der table&nbsp; bleiben
trotz loecshen bestehen.<br>
kapitel <font face=3D"Arial, Helvetica">7.5.11 Table and Index Structures
vom MySQL Manual:<br><br>
MySQL stores its data dictionary information of tables in
</font><font face=3D"Courier New, Courier">`.frm' files in database
directories. But every InnoDB type table also has its own entry in InnoDB
internal data dictionaries inside the tablespace. When MySQL drops a
table or a database, it has to delete both a `.frm' file or files, and
the corresponding entries inside the InnoDB data dictionary. This is the
reason why you cannot move InnoDB tables between databases simply by
moving the `.frm' files, and why DROP DATABASE did not work for InnoDB
type tables in MySQL versions &lt;=3D 3.23.43. <br>
</font>&nbsp;hast vielleicht eine Version kleiner als 3.23.43?<br>
ich hoffe ich liege richtig.<br>
lg<br><br>
<br><br>
At 15:00 12.03.2002 +0100, you wrote:<br>
<blockquote type=3Dcite class=3Dcite cite>Hallo Georg, hallo Liste,<br><br>
Danke erst mal - aber jetzt bin ich komplett durch den Wind. Die
Tabelle<br>
bzw. die Datenbank in der der Fehler auftritt ist v=F6llig leer
(zumindest<br>
stollte Sie das ja nach einem drop database xxx und create database
xxx.<br>
Hab auch schon mal den MySQL Server neu gestartet - bringt nix der<br>
Fehler bleibt.<br><br>
Hat jemand =E4hnliche Probleme mit InnoDBs. Ich traus mich ja kaum zu<br>
sagen - ist ein Windows System ...<br><br>
Gru=DF<br><br>
Ulf<br><br>
&gt; perror 121 =3D=3D&gt;&nbsp; 121 =3D Duplicate key on write or
update<br><br>
<br>
---<br>
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden=20
unter<br>
--&gt;&gt;&nbsp;
<a href=3D"http://www.4t2.com/mysql" eudora=3D"autourl">http://www.4t2.com/m=
ysql</a>
</blockquote>
<x-sigsep><p></x-sigsep>
<hr>
<font color=3D"#FF0000">Macintosh for productivity<br>
Linux for development <br>
Windows for Solitaire <br><br>
</font><font color=3D"#800000">Badran Farwati<br>
mailto: b.farwati_(at)_syria-net.net<br>
mailto: b.farwati_(at)_chello.at<br>
<a href=3D"http://www.syria-net.net/"=
 eudora=3D"autourl">http://www.syria-net.net</a><br>
<hr>
<br>
</font></html>

--=====================_6215597==_.ALT--

---
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive