CentOS7下安装MySQL 5.7.21
第一步:下载MySQL
可以本地下载再上传到服务器上,也可以直接在服务器上下载,根据自己的需要,先简单介绍一下下载。
1、本地下载。
1.1 在官网https://dev.mysql.com/downloads/mysql/下载 mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
包。
1.2 上传到服务器。
[root@app software]# scp /Users/tt/linux/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz root@11.22.33.44:/opt/software
输入服务器密码,上传服务器的/opt/software目录上,没有目录先建一个/opt/software。
2、服务器直接下载。
[root@app opt]# wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
第二步:解压下载到MySQL压缩包
1、解压。
[root@app opt]# tar -zxvf software/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz -C /opt/
将压缩包解压到/opt/目录下
2、创建软链接。
[root@app opt]# ln -s mysql-5.7.21-linux-glibc2.12-x86_64/ /opt/mysql
这里/opt/mysql中的"mysql"切记不要加/,而且在执行此操作之前/opt/下是没有mysql这一级的,执行操作为会生成。
3、在上一步创建软链接的目录下创建一个data目录。
[root@app opt]# cd mysql
[root@app mysql]# mkdir data
第三步:配置相关文件
1、第一个配置文件。
在 /etc/
下创建一个 my.cnf
文件
[root@app etc]# vim my.cnf
并在文件中添加以下内容:
[mysql]
default-character-set=utf8
[mysqld]
basedir = /opt/mysql #注意这个是软链接的目录
datadir = /opt/mysql/data #注意这个是软链接目录下的data目录
port = 3306
default-storage-engine=INNODB
character_set_server=utf8
2、第二个配置文件。
[root@app etc]# cd /opt/
[root@app opt]# cp mysql/support-files/mysql.server /etc/init.d/mysql
在 etc/init.d/mysql
文件中配置以下内容
basedir=/opt/mysql
datadir=/opt/mysql/data
3、添加用户组与用户mysql。
[root@app opt]# groupadd mysql
[root@app opt]# useradd -r -g mysql
以下可以查看是否创建成功:
[root@app opt]# cat /etc/group | grep mysql
mysql:x:1001:
[root@app opt]# cat /etc/passwd | grep mysql
mysql:x:997:1001::/home/mysql:/bin/bash
执行命令后输出提示代码未必完全相同,也可能是1002。
改变解压包的所属组和所属用户
[root@app opt]# chown -R mysql:mysql mysql-5.7.21-linux-glibc2.12-x86_64/
4、配置环境变量。
[root@app opt]# vim /etc/profile
在文件的末尾追加以下内容:
export MYSQL=/opt/mysql
export PATH=$MYSQL/bin:$PATH
配置文件生效:
[root@app opt]# source /etc/profile
第四步:初始化及启动服务
1、初始化数据库。
[root@app mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql --datadir=/opt/mysql/data
2018-04-17T02:22:28.785409Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-04-17T02:22:30.771425Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-04-17T02:22:31.066246Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-04-17T02:22:31.137767Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 2e63d2b2-41e6-11e8-9cfb-00163e11ced0.
2018-04-17T02:22:31.140959Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2018-04-17T02:22:31.141437Z 1 [Note] A temporary password is generated for root@localhost: LyC+kwl62(O,
注意最后一行,的 LyC+kwl62(O,
为默认密码,包括那个逗号,要记下来。
2、启动MySQL。
[root@app mysql]# ./bin/mysqld_safe --user=mysql &
[1] 6864
[root@app mysql]# Logging to '/opt/mysql/data/appin.err'.
2018-04-17T02:34:14.816664Z mysqld_safe Starting mysqld daemon with databases from /opt/mysql/data
此时控制台会停留在此,输入: bg
回车让其在后台运行,如下:
bg
-bash: bg: 任务 1 已在后台
3、进入MySQL。
输入密码的时候就输入之前的临时密码
[root@app mysql]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.21
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
修改密码:
mysql> set password = password('Abc_123');
4、设置远程访问权限。
mysql> grant all privileges on *.* to root@'%' identified by 'Abc_123';
至止mysql安装完成。