说明:将sql文件放到容器中的 /docker-entrypoint-initdb.d/ 目录,就会在mysql第一次启动时执行。之后重启容器不会重复执行! 如果此目录放置多个sql文件,它执行时是没有顺序的。因此,这个目录只放一个init.sql,专门用来控制执行sql顺序的。 mysql/dockerfile FROM mysql:5.7ADD mysqld.cnf/etc/mysql/mysql.conf.d...
首先,我们需要创建一个 SQL 脚本文件,以便在 MySQL 容器启动时执行。示例脚本如下: -- init.sqlCREATEDATABASEIFNOTEXISTSmydatabase;USEmydatabase;CREATETABLEIFNOTEXISTSusers(idINTAUTO_INCREMENTPRIMARYKEY,usernameVARCHAR(255)NOTNULL,passwordVARCHAR(255)NOTNULL);INSERTINTOusers(username,password)VALUES('admin'...
将sqlfile文件夹下的init.sql数据库拷贝到【423d23129a6b容器】下的/home/temp/文件夹下。 进入mysql容器内部 dockerexec-it 423d23129a6b /bin/bash 在mysql容器内部连接到mysql数据库 mysql -u root -p 切换到对应的数据库下,例如 test usetest; 运行如下命令执行存放在mysql容器内home/temp/下的SQL文件 s...
2. 编写docker-compose配置 在docker-compose.yml文件中添加以下内容,用于配置mysql容器: version:'3'services:db:image:mysql:latestrestart:alwaysenvironment:MYSQL_ROOT_PASSWORD:exampleMYSQL_DATABASE:dbnameMYSQL_USER:dbuserMYSQL_PASSWORD:passwordports:-"3306:3306"volumes:-./init.sql:/docker-entrypoint-initdb...
echo`service mysql status`echo'1.启动mysql...'#启动mysql service mysql start sleep3echo`service mysql status`echo'2.开始导入数据...'#导入数据 mysql</mysql/schema.sql echo'3.导入数据完毕...'sleep3echo`service mysql status`#重新设置mysql密码 echo'...
2.准备插入数据库的文件init_data.sql: INSERT INTO`people`(`id`,`name`)VALUES('007','詹姆斯邦德'); 3.创建执行sql的shell脚本createDb.sh: #这个脚本是登录mysql并执行指定的sql文件 mysql -uroot -p$MYSQL_ROOT_PASSWORD <<EOF source $WORK_PATH/$FILE_0; ...
0-init_table.sql,1-init_data.sql,20151225.sql,20160701.sql这四个文件就是我们要执行的sql,在构造docker镜像的时候被复制到镜像文件中。 在当前目录下执行命令docker build --rm -t disconf_mysql:1.0 .构建镜像. 启动镜像 [root@localhost mysql]# docker run--name mysqldisconf-e MYSQL_ROOT_PASSWORD=ro...
sql COPY privileges.sql /mysql/privileges.sql #设置容器启动时执行的命令 CMD ["sh", "/mysql/setup.sh"] 2、编写容器启动脚本setup.sh: #!/bin/bash set -e #查看mysql服务的状态,方便调试,这条语句可以删除 echo `service mysql status` echo '1.启动mysql...' #启动mysql service mysql start slee...
sql ├── mysqld.cnf └── sql ├── init.sql ├── role.sql └── users.sql docker-compose.yml 代码语言:javascript 复制 version: '3' services: mysql: image: mysql:1 container_name: mysql build: ./mysql volumes: - /data/mysql/data:/var/lib/mysql - ./mysql/init:/docker-...
docker exec -it zzmysql env LANG=C.UTF-8 /bin/bash env LANG=C.UTF-8 设置语言为utf-8 第二种使用dockerfile,在初始化的时候就设置好 创建一个init.sql文件,内容如下(和上面的一样) 创建dockerfile,内容如下 FROM mysql:5.7WORKDIR /docker-entrypoint-initdb.dENV LANG=C.UTF-8ADD init.sql . ...