快速登录 laravel 项目对应的 mysql 数据库

更新日期: 2018-10-15 阅读次数: 5845 分类: Linux

Laravel 项目的开发联调阶段,我经常要到服务器上修改 mysql 的表结构。每次打开 .env 文件 copy mysql 用户名及密码,然后复制到 mysql 命令行登陆,非常繁琐。

于是,我写了一个 shell 脚本,可以自动获取 .env 中的 mysql 参数,一键登录 laravel 项目对应的数据库。

#!/bin/bash

source .env
mysql -u$DB_USERNAME -p$DB_PASSWORD -D$DB_DATABASE

脚本置于

/usr/local/bin/mysql_laravel.sh

添加执行权限

chmod +x /usr/local/bin/mysql_laravel.sh

这样每次我只需要 cd 到某个 laravel 项目根目录,执行

mysql_laravel.sh 

即可。

source 的作用

当我们执行某个 shell 脚本,采用 ./some_script.sh 的形式时,他会创建自己的 process context,其父进程(调用他的进程)无法获取到脚本中的变量值。

但是如果使用 source 执行,则其父进程也能获取到脚本中的变量。

export 与直接 = 的区别

使用 export 赋值的变量能够被子进程继承,而直接使用 = 的不能。

关于作者 🌱

我是来自山东烟台的一名开发者,有敢兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式