A web developer often has to access different MySQL databases for different projects. To quickly navigate through them, I like to use project-specific MySQL configuration snippets and aliases. My projects usually have some kind of a namespace, a 2-3 character code specific to that project. Just to give an example, let’s call my project Xylophone Ytterbium Zeta, and its namespace code is XYZ.
I would create a
my.cnf file in my project’s directory with the following content:
host = localhost user = xyzuser password = xyzpassword database = xyzdatabase
If I now run:
$ mysql --defaults-file=~/projects/xyz/my.cnf
I will be logged into the project’s database immediately, without having to enter my credentials.
--defaults-file argument is quite a long argument to type in every time, so I would create a bash alias, so that all I need to do is:
to get into the database. To create this bash alias, I’d simply add the following line to my
alias myxyz="mysql --defaults-file=~/projects/xyz/my.cnf"
Of course your
.bash_rc file needs to know about this file, so check if you have the following snippet in there:
if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi
The latest Ubuntu versions should have that already prepared for you.