如何在阿里云Linux系统上安装MySQL

如何在阿里云Linux系统上安装MySQL

centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会直接覆盖掉这个数据库,当然也可以手动删除一下:

删除卸载mariadb

rpm -qa|grep mariadb  // 查询出来已安装的mariadb
rpm -e --nodeps 文件名  // 卸载mariadb,文件名为上述命令查询出来的文件

然后现在开始将当前目录切换到root也就是:

cd ~

下载与安装MySQL

这里采用Yum管理好了各种rpm包的依赖,能够从指定的服务器自动下载RPM包并且安装,所以在安装完成后必须要卸掉,否则会自动更新。

  • 安装MySQL官方的yum repository

    wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
    
  • 下载rpm包

    yum -y install mysql57-community-release-el7-10.noarch.rpm
    
  • 安装MySQL服务

    yum -y install mysql-community-server
    

    安装完成后会出现complete!

  • 启动MySQL服务

    systemctl start  mysqld.service
    
  • 查看MySQL的状态

    systemctl status mysqld.service
    
如何在阿里云Linux系统上安装MySQL_第1张图片
MySQL的启动状态
  • MySQL常用的几个命令

    重启:
    systemctl restart mysqld.service
    停止:
    systemctl stop mysqld.service
    查看状态:
    systemctl status mysqld.service
    开启启动配置:
    systemctl enable mysqld
    systemctl daemon-reload   //刚刚配置的服务需要让systemctl能识别,就必须刷新配置
    

如何排查MySQL无法启动的问题?

查看mysql的配置cat /etc/my.cnf,其中log-error=/var/log/mysqld.log文件可以看到mysql的报错日志。只另打开一个窗口,输入tail -f /var/log/mysqld.log监听错误日志,就能根据日志定位出错误在哪。

首次登陆MySQL,并操作

  • 登录命令,root用户登录,然后准备输入密码。

    mysql -u root -p
    

    第一次启动MySQL后,就会有临时密码,这个默认的初始密码在/var/log/mysqld.log文件中,我们可以用这个命令来查看:

    grep "password" /var/log/mysqld.log
    

    复制root@localhost:后面的就是你的首次登陆的临时密码

  • 登录成功后,修改密码

    mysql> use mysql;
    Database changed
    
    mysql> update mysql.user set authentication_string=password('新密码XXXX') where user='root' ;
    Query OK, 1 row affected, 1 warning (0.00 sec)
    Rows matched: 1  Changed: 1  Warnings: 1
    
    mysql> SET PASSWORD = PASSWORD('新密码XXXX');
    

    然后就可以用新密码登录了。

到了5.7,在部署完后,会有个默认的密码产生,如何查看:
cat /var/log/mysqld.log | grep "temporary password"
你使用默认密码第一次登录后,需要使用alter命令修改密码,否则什么操作也不允许。在修改默认密码的时候需要注意一下下面的坑。
修改密码的sql语句:
alter user 'root'@'localhost' identified by 'xxx' PASSWORD EXPIRE NEVER account unlock;

有个密码过期,你不指定,就是默认的值是default_password_lifetime指定的360天,需要注意下。

生成的初始密码会在日志中记录,所以对于自动化运维平台来说,多了一步处理,需要先去日志中查找初始密码,在修改密码。

当然如果你的密码过于简单,需要再次登录后,可能会出现无法执行sql命令的情况,这时候就需要修改密码的登等级:

mysql> set global validate_password_policy=0;  //改变密码等级

mysql> set global validate_password_length=4;   //改变密码最小长度

MySQL的设置

  • MySQL的utf8的设置
character_set_server=utf8
init_connect='SET NAMES utf8'

采用navicat新建数据库时,需要将编码方式设置为,字符集:utf8 -- UTF-8 Unicode ,排序规则:utf8_general_ci

  • 配置文件的说明
    /etc/my.cnf 这是mysql的主配置文件
    /var/lib/mysql mysql数据库的数据库文件存放位置
    /var/log mysql数据库的日志输出存放位置

本文是作者根据日常业务场景,写出的一些解决问题或实施想法的历程。如有错误的地方,还请指出,相互学习,共同进步。


下一篇:MySQL如何开启binlog?binlog三种模式的分析

你可能感兴趣的:(如何在阿里云Linux系统上安装MySQL)