MySQL 数据库在我们开发中应该算是用的很频繁的了吧,虽然说生产上的数据库可能不会让我们去安装,但有时可能需要在自己电脑上或者自己买的服务器上安装 MySQL 数据库给我们自己测试使用,这时就需要我们自己动手了,对这些东西熟悉一下总没坏处的。下面就简单说一下数据库的安装以及简单的配置。
其实 Linux 系统上只要源库里有相应的软件源,在上面安装软件是非常方便的事,通常 Ubuntu 服务器上在安装软件时最好先执行一次更新操作:
1sudo apt-get update
然后执行以下三条命令:
1sudo apt-get install mysql-server
2sudo apt-get isntall mysql-client
3sudo apt-get install libmysqlclient-dev
就这样 MySQL 数据库服务以及它的客户端就已经安装好了,安装好之后可以在终端下执行下面的命令测试是否安装成功:
1sudo netstat -tap | grep mysql
如果终端出现如下信息的话这说明 MySQL 已经安装成功:

这种图里面还出现了我上篇文章中的问题命令执行成功了但是终端打印出了 sudo: unable to resolve host ecs-e1c3 的信息,具体原因以及解决方式参考我上一篇文章 开发中遇到的问题记录
这时虽然说 MySQL 数据库已经安装成功了,但是对于 Ubuntu 系统下安装好 MySQL 后出于安全考虑一般都不支持通过服务器的 IP 地址进行连接,默认就是只允许本机 localhost 或者 127.0.0.1 进行连接,因此要想通过 IP 地址去连接我们刚安装好的数据库的话就需要我们自己单独去配置,这里介绍两种方式:
第一种:创建一个新的访问用户,配置该用户可以远程访问(推荐使用这种方式)
(1) 首先需要修改 MySQL 的配置文件,在 Ubuntu 系统下, 安装好了的 MySQL 数据库配置文件在路径 /etc/mysql/mysql.conf.d/ 下,找到该路径下的 mysqld.cnf 文件,打开该文件定位到如下位置:

红色标注部分这里就是 MySQL 默认只能由本机访问,我们将其注释掉,注释之后最好将 MySQL 服务重启,之后再进行创建用户以及赋予新用户相应权限的操作。
(2) 在本机使用 root 用户登录到 MySQL 数据库:
1mysql -u root -p
回车后输入刚才安装过程中设置的密码进行登录。
(3) 在登录成功之后开始创建新用户:
1create user username identified by 'password';
其中 username 是你要创建的用户名,password 为则为该用户登录数据库的密码。
(4) 创建好之后给新创建的用户添加权限:
1grant all privileges on *.* to 'username'@'%' identified by 'password' with grant option;
上面的 all 代表接受所有操作,比如 select,insert,delete….; . 代表 MySQL 数据库服务下所有数据库下所有表,也就是赋予新用户所有权限;而 % 代表这个用户允许从任何地方登录,但如果想要安全一些的话,这个 % 可以替换为你允许登录的 ip 地址,username 表示你要赋予权限的用户名,password 表示该用户对应的数据库登录密码。
(5) 上面完成之后进行权限刷新操作:
1flush privileges;
(6) 执行完上面的操作后,输入 quit 命令退出数据库将 MySQL 服务重启:
1sudo service mysql restart
(7) 重启之后我们用刚才创建好的用户并且使用本机的 IP 地址进行连接测试,输入如下命令进行数据库登录操作:
1mysql -h 192.168.0.161 -u username -p
192.168.0.161 表示 MySQL 服务所在机器的 IP 地址,username 为刚才新创建的用户名,回车后输入刚才新建用户的登录密码,再回车后登录成功表示上述配置已经生效了,如果登录失败的话可以看下是不是刚才哪里配置错了,不出意外的话应该都是可以的,以上就是配置远程访问的第一种方式。
第二种:修改当前 root 用户的配置,使 root 用户可以远程访问
同样的先执行第一种方式中步骤一和步骤二,然后执行以下语句:
1grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option
2flush privileges
之后将 MySQL 数据库服务重启,重启之后就可以直接用 root 用户通过 IP 地址登录测试了
1mysql -h 192.168.0.161 -u root -p
两种方式其实本质是一样的,只不过第二种更省事,直接在已有的 root 用户上进行更改,但这样不是很安全,容易将 root 用户的配置改出错,而且 root 用户权限太大了,容易造成不可控制的错误,所以推荐使用第一种方式,给新用户配置权限时可以指定一些权限,也可以指定 IP 地址可远程访问,这样相对安全些,当然如果只是给你自己测试使用的数据库就可以完全为了省事直接使用第二种方式,快捷方便。
励志成为一名菜鸟码农,共勉!





