From e0d541073da06a583681774b2ecb61bf5a9bd2d1 Mon Sep 17 00:00:00 2001 From: Ghanshyam Mann Date: Tue, 30 Jun 2020 21:21:39 -0500 Subject: [PATCH] Fix user creation with GRANT in MySQL 8.0(Ubuntu Focal) In Ubuntu Bionic (18.04) mysql 5.7 version used to create the user implicitly when using using the GRANT. Ubuntu Focal (20.04) has mysql 8.0 and with mysql 8.0 there is no implicit user creation with GRANT. We need to create the user first before using GRANT command. Nova unit and functional tests job using tools/test-setup.sh script start failing when running on Ubuntu Focal https://zuul.opendev.org/t/openstack/build/8b0f4fcc21854655a638c413b6fe1a91 Error log: mysql: [Warning] Using a password on the command line interface can be insecure. ERROR 1064 (42000) at line 4: 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 'identified by 'openstack_citest' WITH GRANT OPTION' at line 2 Story: #2007865 Task: #40200 Change-Id: I97b0dcbb88c6ef7c22e3c55970211bed792bbd0d Closes-Bug: #1885825 --- tools/test-setup.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/test-setup.sh b/tools/test-setup.sh index 00c765e734ac..5b986ced361a 100755 --- a/tools/test-setup.sh +++ b/tools/test-setup.sh @@ -23,8 +23,8 @@ sudo -H mysqladmin -u root password $DB_ROOT_PW sudo -H mysql -u root -p$DB_ROOT_PW -h localhost -e " DELETE FROM mysql.user WHERE User=''; FLUSH PRIVILEGES; - GRANT ALL PRIVILEGES ON *.* - TO '$DB_USER'@'%' identified by '$DB_PW' WITH GRANT OPTION;" + CREATE USER '$DB_USER'@'%' IDENTIFIED BY '$DB_PW'; + GRANT ALL PRIVILEGES ON *.* TO '$DB_USER'@'%' WITH GRANT OPTION;" # Now create our database. mysql -u $DB_USER -p$DB_PW -h 127.0.0.1 -e "