You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
2.2 KiB

  1. # Can't run test of external client with embedded server
  2. -- source include/not_embedded.inc
  3. # Only run test if "mysql_upgrade" is found
  4. --require r/have_mysql_upgrade.result
  5. --disable_query_log
  6. select LENGTH("$MYSQL_UPGRADE")>0 as have_mysql_upgrade;
  7. --enable_query_log
  8. #
  9. # Basic test that we can run mysql_upgrde and that it finds the
  10. # expected binaries it uses.
  11. #
  12. --echo Run mysql_upgrade once
  13. --exec $MYSQL_UPGRADE --skip-verbose 2>&1
  14. # It should have created a file in the MySQL Servers datadir
  15. file_exists $MYSQLTEST_VARDIR/master-data/mysql_upgrade_info;
  16. --echo Run it again - should say already completed
  17. --replace_result $MYSQL_SERVER_VERSION VERSION
  18. --error 1
  19. --exec $MYSQL_UPGRADE --skip-verbose 2>&1
  20. # It should have created a file in the MySQL Servers datadir
  21. file_exists $MYSQLTEST_VARDIR/master-data/mysql_upgrade_info;
  22. --echo Force should run it regardless of wether it's been run before
  23. --exec $MYSQL_UPGRADE --skip-verbose --force 2>&1
  24. # It should have created a file in the MySQL Servers datadir
  25. file_exists $MYSQLTEST_VARDIR/master-data/mysql_upgrade_info;
  26. #
  27. # Bug #25452 mysql_upgrade access denied.
  28. #
  29. # Password protect a root account and run mysql_upgrade
  30. CREATE USER mysqltest1@'%' IDENTIFIED by 'sakila';
  31. GRANT ALL ON *.* TO mysqltest1@'%';
  32. --echo Run mysql_upgrade with password protected account
  33. --exec $MYSQL_UPGRADE --skip-verbose --force --user=mysqltest1 --password=sakila 2>&1
  34. DROP USER mysqltest1@'%';
  35. #
  36. # Bug #26639 mysql_upgrade exits successfully even if external command failed
  37. #
  38. --echo Run mysql_upgrade with a non existing server socket
  39. --replace_result $MYSQLTEST_VARDIR var
  40. --replace_regex /.*mysqlcheck.*: Got/mysqlcheck: Got/ /\([0-9]*\)/(errno)/
  41. --error 1
  42. --exec $MYSQL_UPGRADE --skip-verbose --force --host=not_existing_host 2>&1
  43. #
  44. # Bug #28401 mysql_upgrade Failed with STRICT_ALL_TABLES, ANSI_QUOTES and NO_ZERO_DATE
  45. #
  46. # The SQL commands used by mysql_upgrade are written to be run
  47. # with sql_mode set to '' - thus the scripts should change sql_mode
  48. # for the session to make sure the SQL is legal.
  49. # Test by setting sql_mode before running mysql_upgrade
  50. set GLOBAL sql_mode='STRICT_ALL_TABLES,ANSI_QUOTES,NO_ZERO_DATE';
  51. --exec $MYSQL_UPGRADE --skip-verbose --force 2>&1
  52. eval set GLOBAL sql_mode=default;