一、RPM安装
rpm 包不同的操作系统发行的不同的包,需要根据情况下载。
rpm -i mysql-community-common-5.7.26-1.el7.x86_64.rpm
rpm -i mysql-community-libs-5.7.26-1.el7.x86_64.rpm
rpm -i mysql-community-client-5.7.26-1.el7.x86_64.rpm
rpm -i mysql-community-server-5.7.26-1.el7.x86_64.rpm
二、二进制安装
可以参考连接:https://blog.csdn.net/PHPer_dust/article/details/88869193
三、源码编译安装
下载源码包。
# 创建必要的组和用户
groupadd mysql
useradd -g mysql mysql
# 安装 Boost ncurses ncurses-devel bison bison-devel gcc-++
wget https://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
yum install ncurses ncurses-devel bison bison-devel gcc-c++
# cmake
cmake . -DCMAKE_INSTALL_PREFIX=/lnmp/mysql \
-DMYSQL_DATADIR = /var/lib/mysql \
-DSYSCONFDIR = /etc/my.cnf \
-DMYSQL_DATADIR=/lnmp/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_USER=mysql \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/boost
# 参数介绍
# -DCMAKE_INSTALL_PREFIX=/lnmp/mysql mysql安装目录
# -DMYSQL_DATADIR=/var/lib/mysql mysql数据存储目录,默认在/var/lib/myql
# -DSYSCONFDIR = /etc/my.cnf my.cnf配置文件目录,默认在/etc/my.cnf
# -DDEFAULT_CHARSET=utf8 默认字符集utf8
# -DDEFAULT_COLLATION=utf8_general_ci 默认编码utf8_general_ci
# -DMYSQL_TCP_PORT=3306 默认端口3306
# -DMYSQL_USER=mysql 默认用户mysql
# -DWITH_INNOBASE_STORAGE_ENGINE=1 InnoDB引擎
# -DWITH_FEDERATED_STORAGE_ENGINE=1 FEDERATED引擎
# -DWITH_ARCHIVE_STORAGE_ENGINE=1 ARCHIVE引擎
# -DWITH_BLACKHOLE_STORAGE_ENGINE=1 BLACKHOLE引擎
# -DWITH_BOOST=/usr/local/boost boost目录
# -DDOWNLOAD_BOOST=1 如果没有boost则下载,0为否
make && make install
# 创建data目录,并赋予权限
mkdir /lnmp/mysql/data
chown mysql:mysql data
chmod 750 data
# mysql初始化
/lnmp/mysql/bin/mysqld --initialize --user=mysql
# 启动mysql
systemctl start mysqld # rpm
myqld_safe --user=mysql # 二进制安装和编译安装
如果初始密码无法进入 MySQL 或忘记了登陆密码,可以使用下面的命令跳过验证,然后重新修改密码。
# mysql进程文件
# 常见位置:/var/lib/mysql/ /var/run/mysqld/ /usr/local/mysql/data/
# 进程文件名称:mysqld系统的主机名或系统的主机名开头
# 停止MySQL服务
kill /var/run/mysqld/mysqld.pid # rpm安装、二进制安装和编译安装,不要使用 -9 参数
mysqladmin -uroot -p shutdown -S /tmp/mysql.sock # 二进制安装和编译安装
systemctl stop mysqld # rpm安装
# 先停止 MySQL 服务,然后以跳过密码验证的方式启动 MySQL 服务
mysqld --user=mysql --skip-grant-tables & # rpm安装
mysqld_safe --user=mysql --skip-grant-tables & # 二进制和编译安装
# 修改密码
# MySQL 5.7.6及更高版本:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
# MySQL 5.7.5及更早版本:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
# 如果ALTER USER语句无法重置密码
UPDATE mysql.user SET authentication_string = PASSWORD('123456'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost';
# 刷新权限
FLUSH PRIVILEGES;