COMMIT con mysql 3.23.58

ciao,

ho un db mysql myisam, vorrei gestire il commit da sola, ho letto che posso farlo con mysql_query(BEGIN/COMMIT/ROLLBACK);

mi sembra di aver capito che non posso se il db non e' innodb, ma io ho mysql 3.23.58 che non lo supporta.Come posso risolvere questo problema?

altra domanda:

ammesso che io possa farlo, se ad esempio devo fare 3 query e ognuna e' in una pagina diversa posso fare

pagina1: begin, query1

pagina2:query2

pagina3: query3,commit/ROLLBACK ?

grazie

inviato 10 anni fa
purpitta
X 0 X

MySQL 3.23 supporta le tabelle InnoDB, bisogna perņ abilitarle.

Per farlo basta modificare il my.ini aggiungendo nella sezione [mysqld] la direttiva innodb_data_file_path=ibdata1:20M (alloca 20 mega di spazio per le tabelle)

Per la seconda domanda: le transazioni si "giocano" su un'unica pagina.

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

MySQL 3.23 supporta le tabelle InnoDB, bisogna perņ abilitarle.

Per farlo basta modificare il my.ini aggiungendo nella sezione [mysqld] la direttiva innodb_data_file_path=ibdata1:20M (alloca 20 mega di spazio per le tabelle)

ciao gianni, ho modificato my.ini ma....

adesso se da riga di comando scrivo

create table(...)type=INNODB non mi da piu errore ma se poi controllo da phpmyadmin il tipo della tabella e' myisam e inoltre se da phpmyadmin accedo alla sezione motori di memorizzazione trovo

 InnoDB

Questo server MySQL non supporta il motore di memorizzazione InnoDB.

Non č disponibile nessuna informazione dettagliata sullo stato di questo motore di memorizzazione.

risposto 10 anni fa
purpitta
X 0 X

Nel file my.ini č presente una direttiva del tipo:

Server=C:/mysql/bin/...

?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

inserisco il mio my.ini

#This File was made using the WinMySQLAdmin 1.4 Tool

#28/12/2005 11.42.32

#Uncomment or Add only the keys that you know how works.

#Read the MySQL Manual for instructions

[mysqld]

basedir=C:/mysql

#bind-address=192.168.0.103

datadir=C:/mysql/data

#language=C:/mysql/share/your language directory

#slow query log#=

#tmpdir#=

#port=3306

#set-variable=key_buffer=16M

innodb_data_file_path=ibdata1:20M

[WinMySQLadmin]

Server=C:/mysql/bin/mysqld-nt.exe

user=*****

password=*******

risposto 10 anni fa
purpitta
X 0 X

Cambia

Server=C:/mysql/bin/mysqld-nt.exe

in

Server=C:/mysql/bin/mysqld-max-nt.exe

Riavvia MySQL e fammi sapere  :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

 :'(

non e' cambiato nulla

 :'(

risposto 10 anni fa
purpitta
X 0 X

controlla i log di MySQL e vedi se all'avvio riporta degli errori.  :dunno:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

 :'( nessun errore

risposto 10 anni fa
purpitta
X 0 X

Esegui questa query e riporta il risultato: SHOW VARIABLES LIKE "have_%"

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Probabilmente il problema č legato al servizio "MySQL" che continua a caricare mysql-nt e non mysql-max-nt

Prova a seguire questi passi:

1) da pannello di controllo ferma il servizio MySQL

2) apri una finestra DOS e portati nella cartella bin di mysql (C:\mysql\bin)

3) rimuovi il vecchio servizio MySql: mysqld-nt --remove

4) installa il nuovo servizio MySqlMax: mysqld-max-nt --install

5) dal pannello di controlla avvia il nuovo servizio MySQL

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

ha funzionato.... ;D  ;D sei grande  O0

non capisco perche' pero' avendo modificato il my.ini e riavviato tutto non funzionava.....cmq mille grazie  :-*

risposto 10 anni fa
purpitta
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda