text: --
  -- Copyright 2021 Apollo Authors
  --
  -- Licensed under the Apache License, Version 2.0 (the "License");
  -- you may not use this file except in compliance with the License.
  -- You may obtain a copy of the License at
  --
  -- http://www.apache.org/licenses/LICENSE-2.0
  --
  -- Unless required by applicable law or agreed to in writing, software
  -- distributed under the License is distributed on an "AS IS" BASIS,
  -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  -- See the License for the specific language governing permissions and
  -- limitations under the License.
  --
  Use ApolloPortalDB;
  
  -- spring session (https://github.com/spring-projects/spring-session/blob/faee8f1bdb8822a5653a81eba838dddf224d92d6/spring-session-jdbc/src/main/resources/org/springframework/session/jdbc/schema-mysql.sql)
  CREATE TABLE SPRING_SESSION (
  	PRIMARY_ID CHAR(36) NOT NULL,
  	SESSION_ID CHAR(36) NOT NULL,
  	CREATION_TIME BIGINT NOT NULL,
  	LAST_ACCESS_TIME BIGINT NOT NULL,
  	MAX_INACTIVE_INTERVAL INT NOT NULL,
  	EXPIRY_TIME BIGINT NOT NULL,
  	PRINCIPAL_NAME VARCHAR(100),
  	CONSTRAINT SPRING_SESSION_PK PRIMARY KEY (PRIMARY_ID)
  ) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
  
  CREATE UNIQUE INDEX SPRING_SESSION_IX1 ON SPRING_SESSION (SESSION_ID);
  CREATE INDEX SPRING_SESSION_IX2 ON SPRING_SESSION (EXPIRY_TIME);
  CREATE INDEX SPRING_SESSION_IX3 ON SPRING_SESSION (PRINCIPAL_NAME);
  
  CREATE TABLE SPRING_SESSION_ATTRIBUTES (
  	SESSION_PRIMARY_ID CHAR(36) NOT NULL,
  	ATTRIBUTE_NAME VARCHAR(200) NOT NULL,
  	ATTRIBUTE_BYTES BLOB NOT NULL,
  	CONSTRAINT SPRING_SESSION_ATTRIBUTES_PK PRIMARY KEY (SESSION_PRIMARY_ID, ATTRIBUTE_NAME),
  	CONSTRAINT SPRING_SESSION_ATTRIBUTES_FK FOREIGN KEY (SESSION_PRIMARY_ID) REFERENCES SPRING_SESSION(PRIMARY_ID) ON DELETE CASCADE
  ) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
  