OpenAnolis8二进制部署MySQL5.7🌘
准备工作:
系统如有mariadb先卸载。
[root@localhost ~]# rpm -qa | grep mariadbrpm -qa | grep mariadb
[root@localhost ~]# yum remove mariadb
1.下载二进制安装包
[root@iZ2ze66iglnmnfsqn6kxtiZ ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz
如果没有libaio,需先安装libaio
[root@localhost ~]# rpm -qa | grep libaio libaio-0.3.112-1.0.1.an8.x86_64 [root@localhost ~]# yum -y install libaio (如没有libaio,安装命令)
2.解压安装
[root@localhost ~]# tar -xvf mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz -C /usr/local/ [root@localhost ~]# cd /usr/local [root@localhost local]# mv mysql-5.7.39-linux-glibc2.12-x86_64/ mysql
3.创建mysql用户及组
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql -s /sbin/nologin mysql
4.创建mysql数据目录
[root@localhost ~]# mkdir /var/lib/mysql [root@localhost ~]# chown -R mysql:mysql /var/lib/mysql [root@localhost ~]# mkdir /var/log/mysql [root@localhost ~]# chown -R mysql:mysql /var/log/mysql
5.创建mysql配置文件
[root@localhost ~]# vim /etc/my.cnf [client] # 默认连接 MySQL 时使用的字符集 default-character-set = utf8mb4 socket=/var/lib/mysql/mysql.sock[mysqld] user=mysql socket=/var/lib/mysql/mysql.sock port=3306 pid-file=/var/lib/mysql/mysql.pid basedir=/usr/local/mysql datadir=/var/lib/mysqllower_case_table_names = 1 explicit_defaults_for_timestamp = 1
#日志配置 log-error = /var/log/mysql/error.log slow-query-log = 1 slow-query-log-file = /var/log/mysql/mysql-slow.log long_query_time = 2# 字符集设置及排序规则 character-set-server = utf8mb4 collation-server = utf8mb4_general_ci
6.配置环境变量
[root@localhost ~]# vim /etc/profile export PATH=$PATH:/usr/local/mysql/bin [root@localhost ~]# source /etc/profile
7.初始化MySQL
[root@localhost ~]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize-insecure --user=mysql
==使用--initialize参数,则会生成临时密码==2022-12-06T07:28:42.142154Z 1 [Note] A temporary password is generated for root@localhost: %NwqJp,7Tu2g==使用--initialize-insecure参数,可以直接登录mysql,无需密码。==
8.启动MySQL
[root@localhost ~]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
使用system管理MySQL(推荐):
[root@localhost ~]# vim /usr/lib/systemd/system/mysql.service [Unit] Description=mysql After=network.target remote-fs.target nss-lookup.target [Service] Type=forking ExecStart=/usr/local/mysql/support-files/mysql.server start ExecReload=/usr/local/mysql/support-files/mysql.server restart ExecStop=/usr/local/mysql/support-files/mysql.server stop PrivateTmp=false [Install] WantedBy=multi-user.target
开机自启
[root@localhost ~]# systemctl daemon-reload
[root@localhost ~]# systemctl enable --now mysql
9.登录MySQL并修改密码
使用--initialize-insecure参数初始化时,可以直接登录mysql
[root@localhost ~]# mysql -uroot mysql> alter user 'root'@'localhost' identified by '123456'; mysql> flush privileges;