Linux|Linux | MySQL

MySQL 是 Oracle 旗下的一款 关系型数据库管理系统,它是稳定、开源、免费的数据库,并且被广泛应用。
一、安装 这里介绍的是 CentOS 环境,安装步骤如下:

  • 下载安装
  • 初始化
  • 启动
  • 开机启动
  • 修改密码
  • 创建用户
  • 第三方工具访问
1.1 下载安装 步骤参考:CentOS 7安装MySQL 5.7.18。
嫌麻烦的话,也可用参考 yum 方式安装:CentOS7 通过YUM安装MySQL5.7。
首先进入 MySQL 下载页面,往下翻一页,可以看到:
Linux|Linux | MySQL
文章图片
做出你认为对的选择之后,点击下面的 Download
Linux|Linux | MySQL
文章图片
关于 RPM Bundle,我认为这并不是必须下载的,因为它打包了所有的 MySQL 包,实际上像在 Windows 中安装一样,只需要选择 Server 部分就好,比如:
Linux|Linux | MySQL
文章图片
如果你认同 CentOS 7安装MySQL 5.7.18 的步骤,或者像我一样是 第一次安装,那么就选择 RPM Bundle
Linux|Linux | MySQL
文章图片
将上图中红色圈起来的链接,右键点击 复制,然后创建 MySQL 软件目录:
sudo mkdir /usr/local/mysqlcd /usr/local/mysql

使用链接地址下载压缩包:
sudo wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar

解压在 /usr/local/mysql 目录下:
sudo tar -xvf mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar

再逐个安装:
sudo rpm -ivh mysql-community-common-5.7.22-1.el7.x86_64.rpmsudo rpm -ivh mysql-community-libs-5.7.22-1.el7.x86_64.rpmsudo rpm -ivh mysql-community-client-5.7.22-1.el7.x86_64.rpmsudo rpm -ivh mysql-community-server-5.7.22-1.el7.x86_64.rpmsudo rpm -ivh mysql-community-devel-5.7.22-1.el7.x86_64.rpm

遇到同样的错误:
Linux|Linux | MySQL
文章图片
搜索后得知,CentOS 7.4 的默认数据库已经不是 MySQL,那就按照博客中移除掉 冲突依赖:
sudo yum -y remove mariadb-libs-1:5.5.56-2.el7.x86_64

然后,继续执行...结果是顺利完成,没有再出现错误。
疑惑:为什么需要安装这么多包?只安装提供的 server 不行吗?*
这个疑惑有机会一定要验证一下,目前对这方面不了解,暂时搁置。
1.2 初始化 执行命令:
sudo mysqld –initialize

遇到问题:
Linux|Linux | MySQL
文章图片
博客中的解决办法是使用 root 用户创建 mysql 用户:
useradd mysql

但我发现 mysql 用户已存在,那可能是安装 MySQL 时自动创建的,先不管,找一下 my.cnf 文件:
mysql --help | grep 'my.cnf'

得到结果:
Linux|Linux | MySQL
文章图片
据说,上面列出的 my.cnf 文件是按顺序执行,因此选择 /etc/my.cnf 文件编辑。
在如图所示的地方添加 user=mysql
Linux|Linux | MySQL
文章图片
由于其他的 my.cnf 文件都不存在,那么就放过它们。
继续执行初始化命令,此时没有出错,查看 /var/log/mysqld.log 文件时,发现问题:
Linux|Linux | MySQL
文章图片
原来是博客内容有误,改正初始化命令为:
mysqld --initialize --user=mysql

如果报这样的错:
Linux|Linux | MySQL
文章图片
要让 root 用户删除 /var/lib/mysql 目录:
rm -rf /var/lib/mysql

再继续执行一下正确的初始化命令:
mysqld --initialize --user=mysql --explicit_defaults_for_timestamp

OK,大功告成!检查一下 cat /var/log/mysqld.log 终于看到密码:
Linux|Linux | MySQL
文章图片
这里是 MySQL 数据库的 root 用户密码,并非 Linux 的 root 用户,请勿混淆!
1.3 启动 经尝试网上多个博客的启动方式,都以失败告终,于是开始寻找 MySQL 的安装目录:
find | grep mysql

结果看到:
Linux|Linux | MySQL
文章图片
这说明 MySQL 在安装时,已经配置好了 启动脚本,那么只需要用这个命令启动:
service mysqld start

果然没错:
Linux|Linux | MySQL
文章图片
1.4 开机启动 通常默认开机启动,执行 systemctl status mysqld.service 可以证明这一点:
Linux|Linux | MySQL
文章图片
不需要的话,可以关闭:
systemctl disable mysqld.service

成功禁用开机启动:
Linux|Linux | MySQL
文章图片
1.5 修改密码 我们需要修改 MySQL 的 root 用户的密码,首先登陆进去:
mysql -u root -p

输入在 my.cnf 找到的密码,成功连接上:
Linux|Linux | MySQL
文章图片
修改密码,请将 password 替换为你自己的密码:
alter user 'root'@'localhost' identified by 'password';

密码要求:6 位长度以上,包含大小写字母、数字、标点符号。
1.6 创建用户 为了访问 MySQL,并且拥有一定的权限,那么应该创建一个普通用户。
一般来说,在本地机器上维护数据库,好过于每次去登陆云服务器,而我们又不可能开通 3306 端口,就只能通过 SSH 通道本地连接 MySQL,这里推荐一个国产软件:Navicat for MySQL,具体下载和破解方式自行百度。
如图,连接并创建 play 用户成功:
Linux|Linux | MySQL
文章图片
这真是一个非常方便的运维工具。
总结 【Linux|Linux | MySQL】其实更推荐用包管理器来安装这些软件,比如 aptyum 等等。

    推荐阅读