Linux 安装Mysql5.7 详细步骤记录
前言
每次做一个新项目的时候,若需要手动在服务器安装mysql,步骤比较繁琐,很久没有安装的话,会忘记一些详细的步骤。
写该文章的目的,主要为了方便自己日后需要的时候查看,同时也共网友们分享。
准备工作
-
操作系统:Linux CentOS 7.x
- MySQL安装包:在官网下载需要的版本,地址:https://dev.mysql.com/downloads/mysql/
-
(注:1.该链接点进去默认是最新版本,可点击”Archives”按钮选择历史版本
-
2.点击”download”会让你登录/注册或者点击下方小字 -> “No thanks,just start my download”)
开始
1.将安装包上传到服务器(eg:/usr/local/),解压到当前文件夹
tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
2.修改文件夹名称
mv mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz mysql
3.添加用户组和用户
#添加用户组
groupadd mysql
#添加用户mysql 到用户组mysql
useradd -r -g mysql mysql
4.将安装目录 /usr/local/mysql/ 的所有者及所属组改为 mysql:
chown -R mysql:mysql /usr/local/mysql/
5.修改配置文件 my.cnf (如果没有,新增一个)
vim /etc/my.cnf
[mysqld]
server_id=1
log-bin=mysql-bin
binlog-format=ROW
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=600
innodb_file_per_table=1
#忽略大小写
lower_case_table_names=1
character_set_server=utf8
pid-file = /usr/local/mysql/data/mysql.pid
#skip-grant-tables
!includedir /etc/my.cnf.d
6.在/usr/local/mysql 目录下创建一个 data 文件夹:
cd /usr/local/mysql
mkdir data
7.初始化:
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
如果出现以下错误
./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
执行: yum install -y libaio
8.将mysql加入到可控制启动服务的文件夹内,并命名mysql (目的:可用 service mysql start
命令来控制启动 mysql)
cd /usr/local/support-files
cp mysql.server /etc/init.d/mysql
9.配置环境变量
vim /etc/profile
在底部添加:
export MYSQL_HOME="/usr/local/mysql"
export PATH="$PATH:$MYSQL_HOME/bin"
:wq保存退出后执行:
source /etc/profile
10.启动mysql
service mysql start
11.登录mysql
mysql -u root -p
注:初始密码在mysql.log里面找到,类似于:
[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 5rFfzY.K6tKp
如果找不到,参考此链接重置密码:linux下mysql5.7初始密码查看及忘记密码重置
12.修改密码
mysql> use mysql;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
mysql> flush privileges;
13.允许使用某个用户名及密码从任何主机连接到该 mysql 服务
mysql> use mysql;
mysql> update user set host='%' where user = 'root';
mysql> flush privileges;
14.退出后重启服务
mysql> exit
service mysql restart
15.测试连接