部署说明
Linux
上安装软件常见的几种方式:
- 源码编译
- 压缩包解压(一般为
tar.gz
) - 编译好的安装包(
RPM
、DPKG
等) - 在线安装(
YUM
、APT
等)
部署方式简单程度:
YUM
>RPM
>tar.gz
> 源码,本文介绍tar.gz
方式.
部署步骤
- 卸载已有
# 通过rpm方式安装的 rpm -qa|grep mysql # 如果有, 卸载 rpm -e --nodeps xxx
查找mysql文件夹
whereis mysql
find / -name mysql
2. 下载`tar.gz`文件, [mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz](https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz)
> 由于国外资源下载缓慢,可以使用[华为开源镜像](https://mirrors.huaweicloud.com/)
3. 安装依赖包
```bash
yum -y install make gcc-c++ cmake bison-devel ncurses-devel numactl libaio
创建系统用户和组
# 创建组 groupadd mysql # 创建不需要登录的系统账号,启动MySQL服务时会使用该账号 useradd -s /sbin/nologin -g mysql -M mysql # useradd -r -g mysql -s /bin/false mysql # useradd -r -g mysql mysql
解压到
/usr/local/
# 解压
tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
# 重命名
mv mysql-5.7.31-linux-glibc2.12-x86_64 mysql
# 移动到/usr/local/下
mv mysql /usr/local/
# mysql目录下创建data文件夹
cd /usr/local/mysql/
mkdir data
# 设置权限
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
- 初始化
# 注意打印日志最后返回的root用户临时密码,登录时用到 bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
初始化日志
2020-07-27T07:13:42.627407Z 1 [Note] A temporary password is generated for root@localhost: 4Mt4Zka<6j)&
1. 编辑配置文件`/etc/my.cnf`
```bash
# 如果有这个文件,先清空
[root@localhost bin]# vi /etc/my.cnf
[mysqld]
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
启动
/usr/local/mysql/support-files/mysql.server start
添加软链接
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql # 重启mysql: service mysqld start|stop|restart|status service mysql restart
添加环境变量,可选
echo “PATH=$PATH:/usr/local/mysql/bin “ >> /etc/profile
source /etc/profile
10. 设置开机启动
```bash
# 将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# 赋予可执行权限
chmod +x /etc/init.d/mysqld
# 添加服务
chkconfig --add mysqld
# 显示服务列表
chkconfig --list
- 登录并修改
root
密码
-- 使用初始化生成的临时密码登录
mysql -u root -p
-- 修改密码
set password for root@localhost = password('123456');
-- ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
-- 开放远程连接
use mysql;
update user set user.Host='%' where user.User='root';
flush privileges;