Centos7下安装mysql5.7.16

mysql的安装(root用户下)

从官网下载软件

  • linux下必须安装系统对应的版本,多少位
  • 必须安装的是:server,client
  • 但是我可不管要安装那个插件,我们直接使用bundle版本(就是各个插件都有)
  • mysql的版本随意,反正我下载的是最新版的:mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar

rpm安装

  • 卸载掉老版的mysql
    • 查询是否有老的mysql
      • rpm -qa | grep mysql
      • rpm -qa|grep mariadb(这条命令下的也必须干掉!)
    • 卸载掉老的mysql(如果存在的话)
      • rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.x86_64
      • 其中-e表示卸载,--nodeps表示强制忽略依赖,后面是查出来的mysql的整体安装包
  • 我们下载是rpm包。最好下载的是bundle整合版的包,实例代码的版本可能有点老,只要名字对应即可。
  • 将下载的个rpm包上传到linux中(必须按照顺序安装

    rpm -ivh mysql-community-common-5.7.9-1.el7.x86_64.rpm

    rpm -ivh mysql-community-libs-5.7.9-1.el7.x86_64.rpm

    rpm -ivh mysql-community-client-5.7.9-1.el7.x86_64.rpm

    rpm -ivh mysql-community-server-5.7.9-1.el7.x86_64.rpm

  • 解释
    • 其中的-ivh后面跟的是安装目录,并将rpm包放入。
    • 以下命令必须在这四个文rpm包所在的文件夹中。

MySQL初始化设置

  • 初始化:mysqld --initialize --user=mysql
    • 如果有这个错误:[ERROR] --initialize specified but the data directory exists. Aborting.
    • 就rm  -rf  /var/lib/mysql然后再执行初始化命令
  • 启动服务:systemctl  start  mysqld
    • 报错:Job for mysqld.service failed because the control process exited with error code.See "systemctl status mysqld.service" and "journalctl -xe" for details.
    • 思路一:/var/lib/mysql-files如果没有这个文件的话,就创建,然后执行systemctl  start  mysqld
    • 如果还不行的话:chown -R mysql:mysql  /var/lib/mysql
  • 初始密码所在的位置:cat  /var/log/mysqld.log

修改密码以及设置可以远程访问

  • 设置密码:set password=password('123456');
  • 设置开启自启动
    • chkconfig  mysql on(centos7命令改为如下:systemctl enable mysqld.service)
    • 实际上这些mysql默认的就是开机自动启动,这些都不用配置,只有在mysql异常是应该查看一下