一、解决的问题
在腾讯云上装了MySQL,每次进入MySQL都得写命令,有点麻烦。
每次登陆MySQL需要的命令(Linux)下:
mysql -u root -p
然后需要输入登陆密码,再选择要操作的表,可以通过以下几个方法设置,节省时间。
二、解决方法
1.配置MySQL的选项文件
MySQL允许把链接参数存储到一个选项文件里。那么启动MySQL的时候就会自动加载这些参数,而不用每次都手动输入。好处是其他MySQL客户端连接MySQL的时候也可以使用这个参数。
touch .my.cnf
创建一个~/ .my.cnf
文件(也就是在主目录下),作为选项文件vi .my.cnf
编辑文件内容如下
[client] #这个是定位符,不能省去
host=localhost
user=root
password=skinny
chmod u=rw,go-rwx .my.conf
设置文件权限,只能本人访问
好了,验证一下。直接用mysql
命令,就能自动加载选项文件中的数据,成功启动。
2.利用shell别名
shell程序支持别名机制,可以将一个较短的命令映射到一条较长的命令上。例如,试一试下面这条命令:
alias sampdb='mysql -u root -pskinny sampdb'
再执行:
sampdb
第一个命令的意思是,将sampdb
这个字符串映射到’mysql -u root -pskinny sampdb’上,也就是执行sampdb
就是执行它映射的这条长命令,呼!so easy吧。
需要注意的两点是:1.短命令之后的等号两边都不能有空格 2.mysql参数-p后接密码的话不能有空格。
不过有个问题是,当你重新登录服务器的时候,这个alias命令的效果就没了,所以要将这个alias重命名命令写在.bashrc
文件中。
通过man bash
查看文档得知:
.bashrc - The individual per-interactive-shell startup file.
这个文件用来保存个性化设置,并且启动bash时后自动执行这个文件(因为在.profile_profile
中调用了.bashrc
,而登陆linux启动bash时首先会去读取~/.bash_profile文件)。
那么直接在.bashrc
文件中加上刚刚的alias映射命令就好了,真是炒鸡简单。
看看这个文件,发现平时经常用的ll
命令就是映射出来的重命名命令,它实际上是命令ls -alF
。
3.通过shell脚本
touch sampdb.sh
创建一个脚本文件exec mysql -u root -pskinny sampdb
脚本文件内添加如上内容- 在命令行中输入命令
./sampdb.sh
,就可以执行脚本了,也就是通过执行脚本中的命令,进入MySQL。不过记得要改权限,chmod u+x sampdb.sh
。
希望能发现更多这样节省时间的技巧,做一个有贡献的懒人!