ky818smKy818sm  2025-11-09 14:05 旷野小站 隐藏边栏 |   抢沙发  4 
文章评分 0 次,平均分 0.0

方法一:一步式命令(推荐)

bash
<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

如果密码有特殊字符,需要使用双引号包裹密码

bash
<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

方法二:分步执行

如果一步式命令有问题,可以分步骤执行:

bash
<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>

验证导入结果

导入完成后,可以验证数据:

bash
<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>

注意事项

  1. 确保文件路径正确:在运行命令前确认SQL文件在当前目录

  2. 数据库存在:确保123pppmysql数据库已存在,如果不存在需要先创建

  3. 权限问题:确保有足够的权限访问MySQL和Docker容器

声明:如果本站发布的内容侵犯到您的权益,请通过邮件【6167555@qq.com】联系本站,我们将及时删除!

声明:本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

发表评论

表情 格式 链接 私密 签到