方法一:一步式命令(推荐)
<span class="token comment"># 将SQL文件复制到容器并解压执行</span>
<span class="token function">docker</span> <span class="token builtin class-name">exec</span> <span class="token parameter variable">-i</span> mysql-rq <span class="token function">bash</span> <span class="token parameter variable">-c</span> <span class="token string">'gunzip -c | mysql -u root -pyour_password 123pppmysql'</span> <span class="token operator"><</span> 123pppmysql.sql.gz
如果密码有特殊字符,需要使用双引号包裹密码
<span class="token function">docker</span> <span class="token builtin class-name">exec</span> <span class="token parameter variable">-i</span> mysql-rq <span class="token function">bash</span> <span class="token parameter variable">-c</span> <span class="token string">'gunzip -c | mysql -u root -p"your_password" 123pppmysql'</span> <span class="token operator"><</span> 123pppmysql.sql.gz
方法二:分步执行
如果一步式命令有问题,可以分步骤执行:
<span class="token comment"># 1. 先将文件复制到容器内</span>
<span class="token function">docker</span> <span class="token function">cp</span> 123pppmysql.sql.gz mysql-rq:/tmp/
<span class="token comment"># 2. 进入容器</span>
<span class="token function">docker</span> <span class="token builtin class-name">exec</span> <span class="token parameter variable">-it</span> mysql-rq <span class="token function">bash</span>
<span class="token comment"># 3. 在容器内解压并导入(需要输入MySQL密码)</span>
gunzip <span class="token parameter variable">-c</span> /tmp/123pppmysql.sql.gz <span class="token operator">|</span> mysql <span class="token parameter variable">-u</span> root <span class="token parameter variable">-p</span> 123pppmysql
<span class="token comment"># 4. 清理临时文件</span>
<span class="token function">rm</span> /tmp/123pppmysql.sql.gz
<span class="token comment"># 5. 退出容器</span>
<span class="token builtin class-name">exit</span>
验证导入结果
导入完成后,可以验证数据:
<span class="token comment"># 进入MySQL查看数据库</span>
<span class="token function">docker</span> <span class="token builtin class-name">exec</span> <span class="token parameter variable">-it</span> mysql-rq mysql <span class="token parameter variable">-u</span> root <span class="token parameter variable">-p</span> <span class="token parameter variable">-e</span> <span class="token string">"USE 123pppmysql; SHOW TABLES;"</span>
注意事项
-
确保文件路径正确:在运行命令前确认SQL文件在当前目录
-
数据库存在:确保
123pppmysql数据库已存在,如果不存在需要先创建 -
权限问题:确保有足够的权限访问MySQL和Docker容器
声明:本文为原创文章,版权归旷野小站所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ MySQL的安装与配置08/05
- ♥ phpmyadmin导入提示 near “ON” at position 2504/14
- ♥ mysql备份命令06/21
- ♥ fail2ban常用指令笔记10/05
- ♥ inux中如何暂停起PID进程02/07
- ♥ docker commit命令详解03/09