前言
最近需要部署一个很古老的项目,需要用的古老版的mysq
需要的配置
因为是一个老数据库,需要以下初始配置
- 忽略大小写 (windows默认不区分)
- 关闭 group by 聚合操作,select 的监测
- 允许 root 用户远程连接
下载文件处理
cd 到安装目录运行(也可以手动下载)
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
解压、改名、移动到指定位置
tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql-5.7.26
mv mysql-5.7.26 /usr/local/
创建mysql用户、和创建存储数据的目录
groupadd mysql
useradd -r -g mysql mysql
mkdir -p /data/mysql
设置参数
在新建的my.cnf
添加以下内容
vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql-5.7.26
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
# 关闭 group by 聚合操作,select 的监测
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
# 忽略大小写
lower_case_table_names=1
[mysql]
default-character-set=utf8
启动mysql
cd /usr/local/mysql-5.7.26/bin/
./mysqld --defaults-file=/home/local-mysql/cnf/my.cnf --basedir=/usr/local/mysql-5.7.26/ --datadir=/home/local-mysql/data/ --user=mysql --initialize
若出现以下错误
image.png
查看是否安装libaio
rpm -qa|grep libaio
image.png
安装libaio
yum install libaio
查看初始密码
vim /data/mysql/mysql.err
image.png
启动mysql服务
service mysql start
若出现错误
image.pngFailed to start mysqld.service: Unit not found
命令 不是service mysqld start
service mysql start
service mysql start
service mysql start
修改mysql密码
cd /usr/local/mysql-5.7.26/bin
mysql -u root -p
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'rootpassword123';
flush privileges;
若修改密码出现错误请运行
update user set host = '%' where user ='root';
网友评论