文章目录
离线安装mysql5.7
1.检查是否安装其他的mysql
rpm -qa|grep -i mysql
# 卸载命令:rpm –ev {包名}
# 查找老版本mysql相关的安装目录命令:find / -name mysql
# 若查找到相关目录使用命令删除目录:rm –rf {目录名}:
2.检查是否有mariadb数据库
rpm -qa|grep mariadb
# 删除
rpm -e --nodeps **************
3.mysql存放目录/usr/local/mysql
-
下载源码
- https://dev.mysql.com/downloads/mysql/5.7.html#downloads
- 选择5.7.24-linux-Generic-64bit
- Compressed TAR Archive-Download
-
查看系统环境
uname -a
-
查看是几位系统
getconf LONG_BIT
-
创建文件夹放置
mkdir /sdtech
cd /sdtech
# 解压
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
# 移动并修改名字
mv mysql-5.7.25-linux-glibc2.12-x86_64 /usr/local/mysql
4.创建主目录(data:存储目录)
mkdir /usr/local/mysql/data
5.主目录权限处理
- 创建mysql用户和组
- 保证了mysql服务的独立性,即便mysql服务被黑掉,得到了mysql用户权限,也不会影响整个系统的安全
- 查看组和用户情况
cat /etc/group | grep mysql
查看组和用户情况:cat /etc/passwd |grep mysql
- 存在则删除原mysql用户
userdel -r mysql
- 再依次查看
- 存在则删除原mysql用户
- 创建mysql组
groupadd mysql
- 创建mysql用户
useradd -r -g mysql mysql
- 修改目录拥有者
chown -R mysql:mysql /usr/local/mysql
6.配置文件及相关目录
- vi /etc/my.cnf
- 不存在则创建
/etc/my.cnf
- 保存退出
wq!
- 不存在则创建
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It‘s a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
socket=/tmp/mysql.sock
pid-file=/tmp/mysqld/mysqld.pid
character-set-server = utf8
log-error=/var/log/mysqld.log
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
- 创建文件/tmp/mysql.sock
cd /tmp/
touch mysql.sock
chown mysql:mysql mysql.sock
chmod 755 mysql.sock
- 创建文件/tmp/mysqld/mysqld.pid
- mkdir mysqld
- touch /tmp/mysqld/mysqld.pid
- chown -R mysql:mysql mysqld
- cd mysqld
- chmod 755 mysqld.pid
- 创建文件/var/log/mysqld.log
- touch /var/log/mysqld.log
- chown -R mysql:mysql /var/log
- cd /var/log
- chmod 755 mysqld.log
6.安装和初始化数据库
6.1.进入mysql的bin目录下
+ cd /usr/local/mysql/bin
6.2.初始化数据库
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
6.2.1如果报错
./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
- 到该网站下载缺少的rpm文件
- Ctrl+F 查看libaio
- 缺啥补啥
- 删除mysql的data目录下的文件后再执行初始化
7.安全启动
- 启动
- cd /usr/local/mysql/bin
- ./mysqld_safe --user=mysql &
- 查看是否成功
ps -ef | grep mysql
- 查看密码
cat /var/log/mysqld.log
- 其中root@localhost:后面的即密码
- 登陆msyql
- ./mysql -uroot -p密码
- 修改密码(必须)
- set password=password(“root”);
8.设置开机自启
- 添加到开机自启
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
# 查看是否成功
ll /etc/init.d/
# 查看mysql服务是否在服务配置中
chkconfig --list mysql
- 若不成功则注册为开机启动服务
- chkconfig --add mysql
- chkconfig --list mysql
- 启动或者停止
- systemctl mysql start
- systemctl mysql stop
9.mysql全局使用
- ln -s /usr/local/mysql/bin/mysql /usr/bin