MySQL Container to Preset Database From SQL File

Problem Statement

Start MySQL container with a pre-defined .sql (database, tables, insert, etc.) file.

Solution

MySQL
 




x
24


 
1
CREATE DATABASE TESTDB;
2
COMMIT;
3
CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'my-secret-pw';
4
GRANT ALL ON TESTDB.* TO 'testuser'@'localhost';
5

          
6
COMMIT;
7

          
8
use TESTDB;
9

          
10
CREATE  TABLE IF NOT EXISTS TESTTABLE
11
(
12
  id INT NOT NULL AUTO_INCREMENT ,
13
  modifiedOn TIMESTAMP,
14
  createdOn TIMESTAMP,
15
  testname VARCHAR (50),
16
  PRIMARY KEY (id)
17
);
18

          
19
INSERT INTO TESTTABLE (testname, createdOn, modifiedOn) VALUES 
20
("name-1", NOW(), NOW()),
21
("name-2", NOW(), NOW()),
22
("name-3", NOW(), NOW()),
23
("name-4", NOW(), NOW());
24
© 2020 GitHub, Inc.