Bug #68015 | mysqlcheck handles table names with dots incorrectly | ||
---|---|---|---|
Submitted: | 2 Jan 2013 20:22 | Modified: | 17 Feb 2014 17:45 |
Reporter: | Nils Breunese | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Command-line Clients | Severity: | S3 (Non-critical) |
Version: | 5.5.28 | OS: | Any |
Assigned to: | CPU Architecture: | Any |
[2 Jan 2013 20:22]
Nils Breunese
[3 Jan 2013 5:41]
MySQL Verification Team
verified as described. mysqlcheck, and any client utility should always surround any schema, table, column, routine, user variable with backticks.
[9 Oct 2013 8:06]
Fredric Johansson
We hit a similar issue when running 'mysqlcheck -o -udbuser -p testdb' to optimize the tables and ended up with this error when it was trying to optimize `testdb`.`tmp.backlog` : mysqlcheck: Got error: 1142: SELECT,INSERT command denied to user 'dbuser'@'localhost' for table 'backlog' when executing 'OPTIMIZE TABLE ... ' . The bug seems to reside in function fix_table_name in mysqlcheck.c according to another user
[7 Feb 2014 9:00]
Ståle Deraas
Hi Xiaobin Lin, Thank you for your contribution. We have chosen to fix this in another way, so we will not take it. Note that with your contribution the following test case fails: create table `t.1`(a int) engine=myisam; --replace_result 'Table is already up to date' OK --exec $MYSQL_CHECK --auto-repair --all-databases drop table `t.1`;
[17 Feb 2014 17:45]
Paul DuBois
Noted in 5.6.17, 5.7.4 changelogs. mysqlcheck did not correctly handle table names containing dots.
[17 Mar 2014 5:59]
Erlend Dahl
bug#71331 was marked as a duplicate.
[29 Mar 2014 18:32]
Laurynas Biveinis
This bug is closed as fixed in 5.6.17, but the testcase by Staale still fails there. Bug 72161.
[1 Apr 2014 12:32]
Paul DuBois
Correction: This bug is fixed in 5.7.4 only.