Phabricator offers a
bin/storage shell command. It allows to run the
mysql client with the options from the application configuration.
That’s useful in a modern distributed environment, when it’s not always straightforward to know what server contains what databases and what credentials to use. In a Docker container, for example, that could be a linked container or a dedicated bare metal instance.
As Laravel offers standardisation of the configuration, we can provide such a command not only for MySQL but also for PostGreSQL, SQLite and SQL Server.
The only requirement is to get the relevant client installed on the machine.
To run it, use
php artisan db:shell.
$ shell docker nasqueron-auth-grove
app@0c62f2315807:/var/wwwroot/default$ php artisan db:shell
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9643865
Server version: 5.7.17 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
This post has been last updated 2017-02-09.