57 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			SQL
		
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			SQL
		
	
	
| -- Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
 | |
| -- 
 | |
| -- This program is free software; you can redistribute it and/or modify
 | |
| -- it under the terms of the GNU General Public License, version 2.0,
 | |
| -- as published by the Free Software Foundation.
 | |
| --
 | |
| -- This program is also distributed with certain software (including
 | |
| -- but not limited to OpenSSL) that is licensed under separate terms,
 | |
| -- as designated in a particular file or component or in included license
 | |
| -- documentation.  The authors of MySQL hereby grant you an additional
 | |
| -- permission to link the program and your derivative works with the
 | |
| -- separately licensed software that they have included with MySQL.
 | |
| --
 | |
| -- This program is distributed in the hope that it will be useful,
 | |
| -- but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
| -- GNU General Public License, version 2.0, for more details.
 | |
| --
 | |
| -- You should have received a copy of the GNU General Public License
 | |
| -- along with this program; if not, write to the Free Software
 | |
| -- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 | |
| 
 | |
| --
 | |
| -- The inital data for system tables of MySQL Test Suite
 | |
| --
 | |
| 
 | |
| -- Get the hostname, if the hostname has any wildcard character like "_" or "%" 
 | |
| -- add escape character in front of wildcard character to convert "_" or "%" to
 | |
| -- a plain character
 | |
| SELECT LOWER( REPLACE((SELECT REPLACE(@@hostname,'_','\_')),'%','\%') )INTO @current_hostname;
 | |
| 
 | |
| 
 | |
| -- Fill "db" table with default grants for anyone to
 | |
| -- access database 'test' and 'test_%' if "db" table didn't exist
 | |
| CREATE TEMPORARY TABLE tmp_db LIKE db;
 | |
| INSERT INTO tmp_db VALUES ('%','test','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','N','N','Y','Y');
 | |
| INSERT INTO tmp_db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','N','N','Y','Y');
 | |
| INSERT INTO db SELECT * FROM tmp_db WHERE @had_db_table=0;
 | |
| DROP TABLE tmp_db;
 | |
| 
 | |
| 
 | |
| -- Fill "user" table with default users allowing root access
 | |
| -- from local machine if "user" table didn't exist before
 | |
| CREATE TEMPORARY TABLE tmp_user LIKE user;
 | |
| INSERT INTO tmp_user VALUES ('localhost','root','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,@@default_authentication_plugin,'','N',CURRENT_TIMESTAMP,NULL,'N','Y','Y');
 | |
| REPLACE INTO tmp_user SELECT @current_hostname,'root','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,@@default_authentication_plugin,'','N',CURRENT_TIMESTAMP,NULL,'N','Y','Y' FROM dual WHERE @current_hostname != 'localhost';
 | |
| INSERT INTO tmp_user (host,user) SELECT @current_hostname,'' FROM dual WHERE @current_hostname != 'localhost';
 | |
| INSERT INTO user SELECT * FROM tmp_user WHERE @had_user_table=0;
 | |
| DROP TABLE tmp_user;
 | |
| 
 | |
| CREATE TEMPORARY TABLE tmp_proxies_priv LIKE proxies_priv;
 | |
| INSERT INTO tmp_proxies_priv VALUES ('localhost', 'root', '', '', TRUE, '', now());
 | |
| REPLACE INTO tmp_proxies_priv SELECT LOWER(@current_hostname), 'root', '', '', TRUE, '', now() FROM DUAL WHERE LOWER (@current_hostname) != 'localhost';
 | |
| INSERT INTO  proxies_priv SELECT * FROM tmp_proxies_priv WHERE @had_proxies_priv_table=0;
 | |
| DROP TABLE tmp_proxies_priv;
 | |
| 
 |