I have problems upgrading to 5.04
I found some solution in the forums and put the sql command directly in PhpMyAdmin and changed the Version
but now it appears:
SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘t2.idaction_url’ in ‘on clause’
and in some parts it says:
Keine Daten
1-10 von NaN
I deleted already manualy the tmp/templates_c files, but still no changes
What can I do?
Thanks in advance!
Anyone can help me?
It’s important, since it’s for my webstore and I’m checking it every day!
Looks like you have a wrong data table?
Did you break your update process?
If taken a look into my database:
CREATE TABLE `piwik_log_link_visit_action` (
`idlink_va` int(11) NOT NULL auto_increment,
`idvisit` int(10) unsigned NOT NULL default '0',
`idaction_url` int(10) unsigned NOT NULL default '0',
`idaction_url_ref` int(10) unsigned NOT NULL default '0',
`idaction_name` int(10) unsigned default NULL,
`time_spent_ref_action` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`idlink_va`),
KEY `index_idvisit` (`idvisit`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Do you have the same structure in your table? If not you can try to add the column manually (but I guess it won’t work for older entries)
Regards,
Christian
Yes, the installation stopped , so I tried to finish it manually with help of forum entries!
My database don’t look the same.
How can I update it? What’s the command?
Thank you!
If you have phpMyAdmin (or any other web tool) you can manually add the missing columns.
Otherwise I need to know which columns are missing? Or you can search for an ALTER sql statement.
Regards,
Christian.
it looks like this:
CREATE TABLE IF NOT EXISTS piwik_log_link_visit_action
(
idlink_va
int(11) NOT NULL auto_increment,
idvisit
int(10) unsigned NOT NULL,
idaction
int(10) unsigned NOT NULL,
idaction_ref
int(11) unsigned NOT NULL,
time_spent_ref_action
int(10) unsigned NOT NULL,
PRIMARY KEY (idlink_va
),
KEY index_idvisit
(idvisit
)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=287435 ;
would appreciate it, if you tell me the command style_emoticons/<#EMO_DIR#>/wink.gif
vipsoft
(vipsoft)
February 4, 2010, 6:24pm
7
You shouldn’t bump the version number without knowing why the update failed – you obviously have a different root cause.
Do you recall what sql it originally failed on? You may have skipped numerous updates.
well, I wanted to update from 0.2.32 to the latest version
but the update stopped, then i started it again and it said:
update 4.0 to 5.4
it didn’t work again and the error still occured:
SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘t2.idaction_url’ in ‘on clause’
So I searched in the forum, used some sql commant in php command, changed the version number manually and tried again, but still not working
looks like i messed it up
but how can i fix it?
i am already a few days without stats for my store and i don’t like that style_emoticons/<#EMO_DIR#>/sad.gif
that’s also what i thought, but how can i fit it??
thanks for your help!
vipsoft
(vipsoft)
February 4, 2010, 8:04pm
10
Look at the scripts in core/Updates and pick out the SQL.
The most common cause for failure is lacking the necessary privileges to drop/create/alter indexes.
sorry, i don’t understand what you mean style_emoticons/<#EMO_DIR#>/blink.gif
i tried to do a sql demand from the core/update files, but getting this error:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '‘ALTER TABLE '. Piwik::prefixTable('log_visit') .'
ADD config_java
TINY’ at line 1
the code , or better the ```sign is wrong or not?
‘ALTER TABLE '. Piwik::prefixTable('log_visit') .'
ADD config_java
TINYINT(1) NOT NULL AFTER config_flash
’ => ‘1060’,
‘ALTER TABLE '. Piwik::prefixTable('log_visit') .'
ADD config_quicktime
TINYINT(1) NOT NULL AFTER config_director
’ => ‘1060’,
‘ALTER TABLE '. Piwik::prefixTable('log_visit') .'
ADD config_gears
TINYINT(1) NOT NULL AFTER config_windowsmedia
,
ADD config_silverlight
TINYINT(1) NOT NULL AFTER config_gears
’ => false,
vipsoft
(vipsoft)
February 6, 2010, 6:14am
13
I’m typing this from my iPhone, so I’ll provide one example and a terse explanation.
This is PHP. You can’t pass this “as is” to MySQL. Hence, the error message.
'ALTER TABLE `'. Piwik::prefixTable('log_visit') .'`
ADD `config_java` TINYINT(1) NOT NULL AFTER `config_flash`' => '1060',
Assuming your table prefix is “piwik_”, the above would become the following SQL:
ALTER TABLE `piwik_log_visit` ADD `config_java` TINYINT(1) NOT NULL AFTER `config_flash`;
The ‘1060’ at the end is a MySQL error code representing an error condition that we can ignore. Any other error requires investigation.
If no error code appears (ie it instead says ‘false’), then the query is mandatory – failure is unacceptable.
If you run into a privilege issue, contact your hosting provider to either run the sql for you, or to grant you the privileges required.
hm thanks, i tried to change it
i tried to change that update code:
‘ALTER TABLE '. Piwik::prefixTable('log_conversion') .'
CHANGE idlink_va
idlink_va
INT(11) DEFAULT NULL’ => false,
‘ALTER TABLE '. Piwik::prefixTable('log_conversion') .'
CHANGE idaction
idaction
INT(11) DEFAULT NULL’ => false,
into this one, but it’s not working, what’s wrong???
ALTER TABLE piwik_log_conversion
CHANGE idlink_va
INT(11) DEFAULT NULL’;
ALTER TABLE piwik_log_conversion
CHANGE idaction
INT(11) DEFAULT NULL’
well, this line worked now
but how do i change this, just getting always errors style_emoticons/<#EMO_DIR#>/sad.gif
‘UPDATE '. Piwik::prefixTable('log_visit') .'
SET location_ip=location_ip+CAST(POW(2,32) AS UNSIGNED) WHERE location_ip < 0’ => false,
‘ALTER TABLE '. Piwik::prefixTable('log_visit') .'
CHANGE location_ip
location_ip
BIGINT UNSIGNED NOT NULL’ => false,
‘UPDATE '. Piwik::prefixTable('logger_api_call') .'
SET caller_ip=caller_ip+CAST(POW(2,32) AS UNSIGNED) WHERE caller_ip < 0’ => false,
‘ALTER TABLE '. Piwik::prefixTable('logger_api_call') .'
CHANGE caller_ip
caller_ip
BIGINT UNSIGNED’ => false,
// 0.4 [1140]
‘ALTER TABLE '. Piwik::prefixTable('log_visit') .'
CHANGE location_ip
location_ip
BIGINT UNSIGNED NOT NULL’ => false,
‘ALTER TABLE '. Piwik::prefixTable('logger_api_call') .'
CHANGE caller_ip
caller_ip
BIGINT UNSIGNED’ => false,
any help please!
right now i am even thinking more about installing the new piwik version and just importing the old structure
but don’t know how this works too style_emoticons/<#EMO_DIR#>/sad.gif
I havn’t checked if its correct, but this should work:
UPDATE `piwik_log_visit` SET location_ip=location_ip+CAST(POW(2,32) AS UNSIGNED) WHERE location_ip < 0;
ALTER TABLE `piwik_log_visit` CHANGE `location_ip` `location_ip` BIGINT UNSIGNED NOT NULL;
UPDATE `piwik_logger_api_call` SET caller_ip=caller_ip+CAST(POW(2,32) AS UNSIGNED) WHERE caller_ip < 0;
ALTER TABLE `piwik_logger_api_call` CHANGE `caller_ip` `caller_ip` BIGINT UNSIGNED;
ALTER TABLE `piwik_log_visit` CHANGE `location_ip` `location_ip` BIGINT UNSIGNED NOT NULL;
ALTER TABLE `piwik_logger_api_call` CHANGE `caller_ip` `caller_ip` BIGINT UNSIGNED;
Regards,
Christian.
great, it worked! thank you!
so i could do some updates manually, but i’m not going further with the 5.0 one:
‘UPDATE ’ . Piwik::prefixTable(‘log_action’) . ’ SET hash
= CRC32(name);’ => false,
‘CREATE INDEX index_type_hash ON ’ . Piwik::prefixTable(‘log_action’) . ’ (type, hash);’ => ‘1061’,
'DROP INDEX index_type_name ON ’ . Piwik::prefixTable(‘log_action’) . ‘;’ => ‘1091’,
how can i do that in phpmyadmin?
Also I didn’t know how to do that update from 0.4.4. manually, since its very different, no mysql commands!
ah Piwik seems to work again!
But just for case, do I need to do these missing updates from my last post?
THANK YOU GUYS!
vipsoft
(vipsoft)
February 10, 2010, 4:56pm
20
It’s a performance optimization.