1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154
|
--source include/big_test.inc
--source include/not_valgrind.inc
--let $MYSQLD_DATADIR= `select @@datadir`
--source include/mysql_upgrade_preparation.inc
#
# Bug #28547424 - MYSQL_UPGRADE FAILES WITH SYNTAX ERROR ON INPLACE FROM 5.7 TO 8.0
#
--let $sql_mode_old= `SELECT @@sql_mode`
--let $MYSQLD_LOG= $MYSQLTEST_VARDIR/log/mysql_upgrade_test.log
--replace_result $MYSQLD_LOG MYSQLD_LOG
--let $restart_parameters = restart:--upgrade=FORCE --sql-mode=$sql_mode_old,ANSI_QUOTES --log-error=$MYSQLD_LOG
--let $wait_counter= 10000
--source include/restart_mysqld.inc
--echo # There should be no errors
--let SEARCH_FILE= $MYSQLD_LOG
--let SEARCH_PATTERN= \[ERROR\]
--source include/search_pattern.inc
--echo # mysql_upgrade_info file should be created successfully.
--let SEARCH_PATTERN= Could not open server upgrade info file \'.*\' for writing\. Please make sure the file is writable\.
--source include/search_pattern.inc
--remove_file $MYSQLD_LOG
--echo # Restart server with defaults
--let $restart_parameters = restart:
--source include/restart_mysqld.inc
--echo #
--echo # Bug #27549249: MYSQL_UPGRADE FAILED TO CHANGE @@SESSION.SQL_LOG_BIN
--echo # WHEN AUTOCOMMIT IS OFF
--echo #
# Filter out ndb_binlog_index to mask differences due to running with or
# without ndb.
--let $restart_parameters = restart:--upgrade=FORCE --autocommit=0
--let $wait_counter= 10000
--source include/restart_mysqld.inc
--echo # Restart server with defaults
--let $restart_parameters = restart:
--source include/restart_mysqld.inc
--echo #
--echo # Bug #28392985: SESSION USER DOES NOT HAVE PRIV SESSION_VARIABLES_ADMIN IN UPGRADED DATABASE
--echo #
SHOW GRANTS FOR "mysql.session"@localhost;
REVOKE SESSION_VARIABLES_ADMIN ON *.* FROM "mysql.session"@localhost;
# Filter out ndb_binlog_index to mask differences due to running with or
# without ndb.
--let $restart_parameters = restart:--upgrade=FORCE
--let $wait_counter= 10000
--source include/restart_mysqld.inc
--echo # Must have SESSION_VARIABLES_ADMIN;
SHOW GRANTS FOR "mysql.session"@localhost;
--echo #
--echo # Bug #28855207: 8.0.13 - MYSQL_UPGRADE FAILS DUE TO PRIMARY KEY ERROR WITHOUT STATING THE TABLE
--echo #
--let restart_parameters=restart: --sql_require_primary_key=1 --upgrade=FORCE
--let $wait_counter= 10000
--source include/restart_mysqld.inc
--echo #
--echo # Bug #29702060: BE MORE ROBUST IF MYSQL_UPGRADE_INFO IS NOT WRITABLE
--echo #
--file_exists $MYSQLD_DATADIR/mysql_upgrade_info
--chmod 0000 $MYSQLD_DATADIR/mysql_upgrade_info
--let $MYSQLD_LOG= $MYSQLTEST_VARDIR/log/mysql_upgrade_file_test.log
--replace_result $MYSQLD_LOG MYSQLD_LOG
--let $restart_parameters = restart:--upgrade=FORCE --log-error=$MYSQLD_LOG
--let $wait_counter= 10000
--source include/restart_mysqld.inc
--echo
--let SEARCH_FILE= $MYSQLD_LOG
--let SEARCH_PATTERN= Could not open server upgrade info file \'.*\' for writing\. Please make sure the file is writable\.
--source include/search_pattern.inc
--chmod 0777 $MYSQLD_DATADIR/mysql_upgrade_info
--remove_file $MYSQLD_LOG
--echo # Cleanup
let $restart_parameters = restart: ;
--source include/restart_mysqld.inc
--source include/mysql_upgrade_cleanup.inc
--echo #
--echo # Bug #33165861: WL#14183 new privileges not taken into account for upgrades
--echo #
CREATE USER u1,u2;
GRANT CREATE USER ON *.* TO u1;
GRANT SYSTEM_VARIABLES_ADMIN ON *.* TO u2;
--echo # There should be no PASSWORDLESS_USER_ADMIN privilege
SHOW GRANTS FOR u1;
--echo # There should be no AUTHENTICATION_POLICY_ADMIN privilege
SHOW GRANTS FOR u2;
# remove these privielges
REVOKE PASSWORDLESS_USER_ADMIN, AUTHENTICATION_POLICY_ADMIN ON *.* FROM root@localhost;
--let $restart_parameters = restart:--upgrade=FORCE
--let $wait_counter= 10000
--source include/restart_mysqld.inc
--echo # Must have PASSWORDLESS_USER_ADMIN privilege
SHOW GRANTS FOR u1;
--echo # Must have AUTHENTICATION_POLICY_ADMIN privilege
SHOW GRANTS FOR u2;
--echo # Must have AUTHENTICATION_POLICY_ADMIN, PASSWORDLESS_USER_ADMIN privilegea
SHOW GRANTS FOR root@localhost;
# Cleanup
DROP USER u1,u2;
--echo #
--echo # Bug#34068378: Grant SENSITIVE_VARIABLES_OBSERVER in case of database upgrade
--echo #
CREATE USER u34068378;
GRANT SYSTEM_VARIABLES_ADMIN ON *.* TO u34068378;
--echo # There should be no SENSITIVE_VARIABLES_OBSERVER privilege
SHOW GRANTS for u34068378;
# remove SENSITIVE_VARIABLES_OBSERVER from root
REVOKE SENSITIVE_VARIABLES_OBSERVER ON *.* FROM root@localhost;
--let $restart_parameters = restart:--upgrade=FORCE
--let $wait_counter= 10000
--source include/restart_mysqld.inc
--echo # Must have SENSITIVE_VARIABLES_OBSERVER privilege
SHOW GRANTS for u34068378;
SHOW GRANTS for root@localhost;
# cleanup
DROP USER u34068378;
--echo
--echo End of tests
|