1.下载Mysql包
下载地址:MySQL :: Download MySQL Community Server
下载好后,将MySQL包(tar)使用ftp工具上传在 /home/usr/local/software(不会使用ftp,shell工具自行百度)
2.解压Mysql包:
tar -xzvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz
3.重命名为Mysql-5.7 :
mv mysql-5.7.32-linux-glibc2.12-x86_64 mysql-5.7
查看:
4.移动目录位置(/home/usr/local/):
mv mysql-5.7 /home/usr/local/
5.创建Mysql 数据存放文件夹
cd /home/usr/local/mysql-5.7
mkdir data
6.安装依赖包
MySQL 依赖于该libaio库
yum install libaio
以下是官网的原话:
7.创建用户,组
groupadd mysql
useradd -r -g mysql mysql
授予mysql用户,mysql组 使用mysql-5.7文件夹的权限
chown mysql:mysql -R /home/usr/local/mysql-5.7
8.进行mysql初始化:
/home/usr/local/mysql-5.7/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
命令行解读
/home/usr/local/mysql-5.7:mysql安装目录
/home/usr/local/mysql-5.7/bin/mysqld:安装目录下的Bin目录下的mysqld
--user=mysql:用户为mysql
--basedir=/home/usr/local/mysql-5.7 :Mysql基础系统文件夹位置
--datadir=/home/usr/local/mysql-5.7/data :Mysql存放数据文件夹位置
--initialize:初始化
生成初始密码:U,SQ&Bwep6hF (密码随机生成的,都不一样,记得保存)
9.修改配置文件
vim /etc/my.cnf
[mysqld]
datadir=/home/usr/local/mysql-5.7/data
port=3306
user=mysql
character-set-server=utf8
[mysqld_safe]
log-error=/home/usr/local/mysql-5.7/data/mysql/mysql.err
pid-file=/home/usr/local/mysql-5.7/data/mysql/mysql.pid
-
如果碰到My.cnf文件没有生成:可以直接在/etc/ 下生成一份
vim /etc/my.cnf
然后粘贴以下内容:
[mysqld]
datadir=/home/usr/local/mysql-5.7/data
port=3306
user=mysql
character-set-server=utf8
[mysqld_safe]
log-error=/home/usr/local/mysql-5.7/data/mysql/mysql.err
pid-file=/home/usr/local/mysql-5.7/data/mysql/mysql.pid
如果有提示mysql.err有问题
那么直接在/home/usr/local/mysql-5.7/data/mysql目录下创建一个文件
touch mysql.err
chmod 777 mysql.err
10.系统服务
将mysql目录(/home/usr/local/mysql-5.7/support-files)下的mysql.server文件复制在 /etc/init.d/mysql
cp /home/usr/local/mysql-5.7/support-files/mysql.server /etc/init.d/mysql
11.开机自启
chkconfig mysql on
12.启动Mysql
service mysql start
13.登录Mysql
/home/usr/local/mysql-5.7/bin/mysql -uroot -p
输入密码:(之前随机生成的密码)
如果密码随机忘记了:
一、查看mysqld.log带有的密码
grep 'temporary password' /var/log/mysqld.log
二、编辑my.cnf文件
vim /etc/my.cnf
在[mysqld]下添加一行:
skip-grant-tables
最终文件:
[mysqld]
basedir=/home/usr/local/mysql-5.7
datadir=/home/usr/local/mysql-5.7/data
socket=/tmp/mysql.sock
log-error=/home/usr/local/mysql-5.7/data/mysql/mysql.err
port=3306
user=mysql
character-set-server=utf8
skip-grant-tables
[mysqld_safe]
pid-file=/home/usr/local/mysql-5.7/data/mysql/mysql.pid
[client]
socket=/tmp/mysql.sock
那么此时就免密登录了:
/home/usr/local/mysql-5.7/bin/mysql -uroot
14.修改密码(不使用随机密码)
两种方式(选择其一即可):
1.
-- 选择mysql库
use mysql;
-- 更新root用户host访问范围
update user set host = '%',password = '123456' where user = 'root';
-- 刷新权限
FLUSH PRIVILEGES;
2. -- 选择mysql库
use mysql;
-- 更新root用户host访问范围
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
-- 刷新权限
FLUSH PRIVILEGES;
15.配置环境变量
在没配置环境变量前,登录:
/home/usr/local/mysql-5.7/bin/mysql -uroot -p
要是更加简洁方便的登录:
mysql -uroot -p
那么想要使用第二种方式登陆的话,那么就得配置环境变量:
vim /etc/profile
文件末尾处(按G跳到末尾):
export MYSQL_HOME=/home/usr/local/mysql-5.7
export PATH=$PATH:$MYSQL_HOME/bin
source /etc/profile
查看效果:
16.MySQL工具连接mysql
第12步更新了root用户的访问范围:一般来说,mysql安装在Linux操作系统上,使用远程界面看起来有些麻烦,那么在window上就可以使用navicat进行连接。