CentOS7 安装 MySQL 两种安装方式 下载安装包 编译安装

第二种安装方式是采用在MySQL官网上下载的安装包直接进行编译安装。这样安装方式出现的缘由主要是因为第一种安装方式下载安装包时速度太慢。在下载网速较好的前提下,本文建议使用第一种安装方式。更加简单稳定,CentOS可以自动地处理一些异常错误,整个安装过程不容易出错。若是采用的是第二种安装方式,那么具体的安装流程以下:

  1. 首先在MySQL的官网上下载MySQL的编译安装包。编译安装包的格式通常为.tar.xz格式。为了方便阐述,现假设使用下载到的安装包名称为mysql-8.0.16-linux-glibc2.12-x86_64.tar。mysql

  2. .tar.xz是一种双重压缩文件。在解压这种的时候,能够先解压外层的压缩.xz格式,再解压里层的.tar格式。linux

  1. 采用第一种方式解压的输入命令以下:
    先解压外层 .xz :
    xz -d mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
    解压完成后出现:

图3 xz方式解压 .tar.xz 文件web

再解压里层 .tar :
tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar
解压完成后出现:sql

图4 tar方式解压 .tar 文件数据库

可见,只剩下 .tar文件与解压后的文件夹了,原来的 .tar.xz 文件已经被CentOS自动删除。windows

  1. 采用第二种方式解压的输入命令以下:
    tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
    上条命令直接使用tar解压.tar.xz文件。方便快捷,本文建议使用。
  1. 输入命令:
    mv -f mysql-8.0.16-linux-glibc2.12-x86_64 /usr/local/mysql
    等tar完成, 将解压后的文件夹拷贝到/usr/local/并将该文件夹重命名为mysql。

4. 或者也能够直接省略复制的步骤,直接在解压.tar.xz文件的时候直接将解压文件复制到所须要存放的目录。也就是windows中的RAR软件经常使用的解压到功能。要实现这一功能须要在tar命令中添加特定目录指定参数 -c:
因为/usr/local/mysql目录原先不存在,全部要先建立:
mkdir /usr/local/mysql
而后再进行解压复制:
tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz -C /usr/local/mysql安全

  1. 而后使用cd命令进入MySQL解压后存放的目录: /usr/local/mysql :
    cd /usr/local/mysql/
    cd mysql-8.0.16-linux-glibc2.12-x86_64/binide

  2. 输入命令:
    安装:numactl 库,不然启动mysqld 会报错
    yum -y install numactl
    首先建立MySQL的Data数据存储目录:
    mkdir /usr/local/mysql/data/svg

  3. 建立mysql用户,不然初始化时会报错:
    输入命令:
    将/usr/local/mysql 目录的全部者定义为:mysql :
    cd /usr/local/mysql/
    useradd mysql
    groupadd mysql
    useradd -r -g mysql -s /bin/false mysql
    chown -R mysql:mysql ./ui

  4. 而后初始化MySQL,并同时定义MySQL的数据存放目录: datadir
    cd /usr/local/mysql/
    cd mysql-8.0.16-linux-glibc2.12-x86_64/bin

./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data/

该命令进入目录:/usr/local/mysql,启动mysqld程序,使mysqld程序启动MySQL的初始化操做,而且将运行mysqld的用户名设置为mysql。这里的mysqld的用户名能够不设置为mysqld。设置了服务进程的专属用户后,全部经过mysqld进程建立的文件都会属于该设置用户。命令: --datadir= :用于设置MySQL的数据目录。上面一条的命令同时将MySQL的数据目录设置为:/usr/local/mysql/data/。

初始化成功后,将显示MySQL数据库为root用户生成的初始密码。该密码保存在error log文件中。是MySQL8为root用户随机生成了一个初始随机密码。该密码位于字符串:
A temporary password is generated for root@localhost:
中的root@localhost:冒号的后面。
使用者须要记住这个临时root密码,在初次登陆MySQL时须要输入此密码,而后才能进入MySQL修改密码。
例如:
2019-05-15T08:18:40.141085Z 5 [Note] [MY-010454] [Server] A temporary password i s generated for root@localhost: gr+2srgHfwC#

  1. 配置my.cnf:
    输入命令:nano /etc/my.cnf : 新建打开mysql配置文件;
    输入命令:在my.cnf文件中写入:
    [mysqld]

设置3306端口

port=3306

设置mysql的安装目录

basedir=/usr/local/mysql

设置mysql数据库的数据的存放目录

datadir=/usr/local/mysql/data/

容许最大链接数

max_connections=100000000

容许链接失败的次数。这是为了防止有人从该主机试图攻击数据库系统

max_connect_errors=10

服务端使用的字符集默认为UTF8

character-set-server=utf8

建立新表时将使用的默认存储引擎

default-storage-engine=INNODB

默认使用“mysql_native_password”插件认证

default_authentication_plugin=mysql_native_password
[mysql]

设置mysql客户端默认字符集

default-character-set=utf8
[client]

设置mysql客户端链接服务端时默认使用的端口

port=3306
default-character-set=utf8

  1. 下面输入命令用于启动mysql数据库服务:
    启动mysql的方式通常能够分红三种:

  2. service 启动 : 输入命令 : service mysqld start

  3. mysqld 脚本启动 : 输入命令 : /etc/inint.d/mysqld start

  4. mysqld_safe 启动 : 输入命令 :
    cd /usr/local/mysql/
    cd mysql-8.0.16-linux-glibc2.12-x86_64/bin
    ./mysqld_safe --user=mysql &
    这里本文建议使用第三种启动方式。
    若是采用第二种启动方式,CentOS将会直接经过运行mysqld程序来启动mysql。这种启动方式因为容易错误判断,无论程序是否已经在运行都直接启动。容易形成死锁等不良结果。第三种启动方式是采用mysql的安全脚本进行启动。mysqld_safe脚本在启动mysql服务后,将会继续监控mysql的实际运行情况。这种启动方式的好处是,若是mysql服务出现死锁或者宕机时重启mysql服务,解除错误的发生。

  5. 在/usr/local/mysql/目录下,输入命令:
    cd /usr/local/mysql/
    cd mysql-8.0.16-linux-glibc2.12-x86_64/bin


./mysql -uroot -p
该命令在mysql服务启动后使用。用于开启数据库的root登陆。以root的用户名登陆mysql。这里的-u表示使用用户名登陆,-p表示使用密码登陆。
输入上述一条命令后,根据提示输入由第12初始化时得到的初始密码。

  1. 在myswql> 标头下输入命令:
    mysql>alter user ‘root’@‘localhost’ identified by ‘NewPassword’;
    alter user ‘root’@‘localhost’ identified by ‘878889’;

    注意将上述命令这种的’NewPassword’字符串改为使用者的root帐号的密码。

  2. 输入命令:mysql>flush privileges;
    使用上述命令,刷新MySQL的系统权限配置表。使得上述全部的配置生效。或者直接输入重启MySQL命令: service mysqld restart :使得上述全部配置生效。

  3. 完成配置,输入命令:
    mysql>exit; :或者
    mysql>quit; :或者
    mysql> \q;
    退出MySQL编辑模式。

至此,采用第2种安装方式安装MySQL所有完成。