小白都能看懂的MySQL超实用安装说明书(CentOS7.0系统)

一、环境准备

1.1 查看CentOS是否有相应cglib版本

我的安装包名为:mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
该安装包指定了glibc的版本,因此先查询下centos是否有该版本

## 补充:glibc是GNU发布的libc库,即c运行库。
## glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。
strings /lib64/libc.so.6 | grep GLIBC

命令示范:
在这里插入图片描述
若没有对应版本,需要升级对应GLIBC版本。

1.2 查找卸载已存在的MySQL rpm安装包

①查找
## 列出所有被安装的名字包含mysql(grep -i:不区分大小)的rpm package 
rpm -qa|grep -i mysql
②若有已安装的软件,需要卸载软件。卸载后重新查一遍确认
## -e在系统中卸载软件
## -v详述安装过程
rpm –ev <包名>

1.3 查找并删除已存在的MySQL相关的安装目录

①查找名为mysql的目录
## -name name: 文件名称符合 name 的文件。
## -iname name: -iname和-name相比会忽略大小写
## path填"/"表示从根目录开始查起(绝对路径一定是由根目录 / 开始写起)
find / -name mysql

命令示范:
在这里插入图片描述

②删除需要删除的目录、删除后重新查一遍确认
## -r 将目录及以下之档案亦逐一删除。
## -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
rm –rf <目录名>

1.4 卸载mariadb

CentOS7默认会安装一个MySQL的分支产品mariadb,必须先卸载此分支产品。

①查找mariadb
rpm -qa | grep mariadb
②卸载mariadb
## --nodeps不考虑依赖
rpm -e --nodeps <rpm包名>

二、MySQL解压、相关目录配置及授权

mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz安装包我放在了/opt目录下。
(若难以复制安装包到linux下,可以使用Xftp传输工具)

2.1 解压到当前目录

cd /opt
## -x 从备份文件中还原文件,即解压,与压缩参数-c相对应
## -z 通过gzip指令处理备份文件(处理.gz格式的文件,与-j(处理.bz2格式的文件)相对应)
## -v 显示指令执行过程。
## -f<备份文件> 指定备份文件。
tar -xzvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz

2.2 MySQL主目录处理

①移动到应用程序目录/usr/local
mv mysql-5.7.31-linux-glibc2.12-x86_64 /usr/local
②重命名文件夹为mysql
## 移动到需要的目录
cd /usr/local
## 重命名文件夹
mv mysql-5.7.31-linux-glibc2.12-x86_64 mysql
③主目录下建立data文件夹
cd /usr/local/mysql
## 建立data子目录
mkdir data

2.3 MySQL主目录权限处理

①查看组和用户情况
## /ect/group 文件是用户组配置文件,即用户组的所有信息都存放在此文件中
## 组名:密码:GID:该用户组中的用户列表
cat /etc/group | grep mysql
## /etc/passwd 系统用户配置文件,存储了系统中所有用户的基本信息
## 注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序 
cat /etc/passwd |grep mysql

命令示范:
在这里插入图片描述
在这里插入图片描述

②若存在,删除原mysql用户,重新查询确认已删除
## 删除对应的组和用户
## -r 删除用户登入目录以及目录中所有文件
userdel -r mysql
③创建mysql用户组和用户
groupadd mysql
## useradd
## -r  建立系统帐号
## -g<群组>  指定用户所属的群组
useradd -r -g mysql mysql
## 将/usr/local/mysql的所有文件与子目录的拥有者设为mysql(:前面),群体的使用者mysql(:后面)
## -R : 处理指定目录以及其子目录下的所有文件
chown -R mysql:mysql /usr/local/mysql

2.4 创建MySQL配置文件及相关目录

vim命令说明:
  • 命令模式:
    i : 切换到输入模式,以输入字符。
    x : 删除当前光标所在处的字符。
    : : 切换到底线命令模式,以在最底一行输入命令。
  • 输入模式
    ESC :退出输入模式,切换到命令模式
  • 底线命令模式:
    q : 退出程序
    w : 保存文件
    在这里插入图片描述
①编辑MySQL配置文件
vim /etc/my.cnf

内容:

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
socket=/tmp/mysql.sock

symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/tmp/mysqld/mysqld.pid
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
log-bin=mysql-bin 
binlog-format=ROW 
server_id=1 
max_connections=1000

init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
②保存并退出
## wq  保存编辑退出
## wq!保存编辑强制退出
:wq!
③创建socket连接文件(/tmp/mysql.sock),并设置用户组及用户,授权
cd /tmp
## touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件
touch mysql.sock
chown mysql:mysql mysql.sock
## 补充:
## chmod是Linux下设置文件权限的命令,后面的数字表示不同用户或用户组的权限
## 第一个数字表示文件所有者的权限
## 第二个数字表示与文件所有者同属一个用户组的其他用户的权限
## 第三个数字表示其它用户组的权限
## 权限分为三种:读(r=4),写(w=2),执行(x=1)。
## 综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)
## ----------------------------------------------------------------------------
## chmod 755 设置用户的权限为:
## 1.文件所有者可读可写可执行
## 2.与文件所有者同属一个用户组的其他用户可读可执行
## 3.其它用户组可读可执行
chmod 755 mysql.sock
④创建/tmp/mysqld/mysqld.pid文件,并设置用户组及用户,授权

mysql.pid文件记录的是当前 mysqld 进程的 pid.

mkdir mysqld
cd /tmp/mysqld
touch mysqld.pid
cd ..
chown -R mysql:mysql mysqld
cd mysqld
chmod 755 mysqld.pid
④创建mysql日志文件/var/log/mysqld.log,并设置用户组及用户,授权
cd /var/log
touch /var/log/mysqld.log
cd ..
chown -R mysql:mysql /var/log
cd log
chmod 755 mysqld.log

三、安装和初始化数据库

3.1 初始化数据库

cd /usr/local/mysql/bin/
## 初始化数据库
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql--datadir=/usr/local/mysql/data

3.2 安全启动mysql

./mysqld_safe --user=mysql &
是否启动成功,可以通过查看mysql进程
ps -ef | grep mysql

3.3 获取默认密码

默认密码在mysqld.log日志里, 找到后保存到安全的地方

cat /var/log/mysqld.log

命令示范:
在这里插入图片描述

3.4 登录mysql

cd /usr/local/mysql/bin/
## 登录mysql
./mysql -u root -p

拷贝或者输入mysqld.log中获得的默认密码,即可进入mysql命令客户端:
在这里插入图片描述

3.5 重置密码

执行show databases;
会报错:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

mysql> show databases;
①重置密码为1234
mysql> set password=password("1234");
②设置远程登录权限
mysql>grant all privileges on *.* to 'root'@'%' identified by '1234'; 

立即生效:

mysql> flush privileges;
③退出

退出quit 或者 exit

mysql> quit;

命令演示:
在这里插入图片描述

3.6 设置开机启动

①把support-files/mysql.server 拷贝为/etc/init.d/mysql
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
②查看mysql服务是否在服务配置中
chkconfig --list mysql
③若没有,则把mysql注册为开机启动的服务
chkconfig --add mysql
chkconfig --list mysql

在这里插入图片描述

④启动/停止服务
service mysql start
service mysql stop

3.7 创建快捷方式

服务启动后,直接运行mysql -u root -p即可登录,不需要进入到对应的目录。

## 将mysql命令 注册快捷方式
ln -s /usr/local/mysql/bin/mysql /usr/bin
## 将mysqladmin命令 注册快捷方式
ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Funnee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值