目录
前言
一、安装包下载
二、安装步骤
1.安装包上传
2.卸载系统自带mariadb
2.1查看数据库是否存在
2.2 卸载
3.创建用户
3.1 创建用户组
3.2 创建用户
3.3 对该用户设置密码
4.安装包解压缩
4.1 进入放安装包目录
4.2 解压mysql-5.7.34-linux-glibc2.12-x86_64.tar 文件
4.3 解压 mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz 包
4.4 重命名
4.5 mysql 文件权限设置
5.创建my.cnf配置文件
6.初始化文件
6.1 初始化mysqld.log
6.2 初始化 mysqld.pid
6.3 初始化数据库
7、启动数据库并设置开机自启
7.1 启动数据库
7.2 设置开启自启
8、 配置环境变量
9、登录并修改初始密码
总结
前言
平时本地使用Mysql都直接安装到Windows上(Windows安装教程点击),最近想学习一下在CentOS安装并配置主从复制,本想很简单,没想到搞了一天才搞好,所以就写了这篇文章做个总结。
一、安装包下载
在官网下载安装包:mysql-5.7.34-linux-glibc2.12-x86_64.tar
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
二、安装步骤
1.安装包上传
将安装包上传到 /usr/local目录下
2.卸载系统自带mariadb
2.1查看数据库是否存在
rpm -qa | grep mariadb
此时在/etc 目录下存在my.cnf文件
2.2 卸载
rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
卸载完成后查看发现/etc/my.cnf文件已经被删除了,如果没有删除则需要收到手动删除
3.创建用户
为了方便管理,生产环境一般会为数据库创建单独的用户组及用户
3.1 创建用户组
groupadd mysql
3.2 创建用户
useradd -g mysql mysql -d /home/mysql
3.3 对该用户设置密码
passwd mysql
4.安装包解压缩
4.1 进入放安装包目录
cd /usr/local/
4.2 解压mysql-5.7.34-linux-glibc2.12-x86_64.tar 文件
tar -xvf mysql-5.7.34-linux-glibc2.12-x86_64.tar
mysql-5.7.34-linux-glibc2.12-x86_64.tar包解又解压出两个压缩包
4.3 解压 mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz 包
tar -xzvf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz
4.4 重命名
把解压出来的mysql-5.7.34-linux-glibc2.12-x86_64 文件夹重新命名为mysql
mv mysql-5.7.34-linux-glibc2.12-x86_64 mysql
4.5 mysql 文件权限设置
把/usr/local/mysql文件夹的读写权限设置给mysql 组下的mysql用户
chown -R mysql:mysql mysql/
5.创建my.cnf配置文件
vi /etc/my.cnf
配置文件内容如下:
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/mysqld/mysqld.pid
#不区分大小写
lower_case_table_names = 1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections=5000
保存文件
6.初始化文件
6.1 初始化mysqld.log
进入到/var/log目录(该文件存放目录要与配置文件中的一致)
cd /var/log
在log目录下创建一个mysqld.log空文件
touch mysqld.log
给该文件授权
chmod 777 mysqld.log
chown mysql:mysql mysqld.log
6.2 初始化 mysqld.pid
进入/usr/local/mysql目录下
cd /usr/local/mysql
创建 mysqld 文件夹
进入mysqld文件夹下创建mysqld.pid文件
cd mysqld
touch mysqld.pid
给mysqld文件夹赋权限
cd ..
chmod 777 mysqld
chown -R mysql:mysql mysqld/
6.3 初始化数据库
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US
此时会报错,此时需要安装一下libaio
yum install libaio
安装libaio完成后再次执行数据库初始化语句
初始化完成后需要在 /var/log/mysqld.log 文件中找到root 的初始密码
cat /var/log/mysqld.log
7、启动数据库并设置开机自启
7.1 启动数据库
#源目录启动:
/usr/local/mysql/support-files/mysql.server start
7.2 设置开启自启
# 复制启动脚本到资源目录
cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
# 增加mysqld服务控制脚本执行权限
chmod +x /etc/rc.d/init.d/mysqld
# 将mysqld服务加入到系统服务
chkconfig --add mysqld
# 检查mysqld服务是否已经生效
chkconfig --list mysqld
该步骤完成后再启动数据库就不用通过源目录启动了,可以在任何地方直接执行
service mysqld start 启动数据库
service mysqld stop 停止数据库
service mysqld restart 重启数据库
8、 配置环境变量
为了更好的使用mysql命令,不用每次都要把路径打出来了执行,所以需要对mysql进行环境变量配置。
例如如果不配置环境变量,要连接mysql,需要执行
/usr/local/mysql/bin/mysql -uroot -p
步骤:
(1) 编辑 profile文件
vi /etc/profile
(2)使配置文件生效
source /etc/profile
此时在任何地方直接执行mysql命令就行
9、登录并修改初始密码
mysql -uroot -p
初始化密码在/var/log/mysqld.log文件中
输入初始密码登录
set password for root@localhost=password("123");
至此数据库安装完成
总结
参考文章:《Linux CentOS 7离线安装MySQL 5.7》