MySQL的Bundle_RPM包安装

1. Linux 系统安装MySQL

1.1 下载Linux 安装包

1
https://dev.mysql.com/downloads/mysql/5.7.html#downloads

1.2 安装MySQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
1). 卸载 centos 中预安装的 mysql

rpm -qa | grep -i mysql

rpm -e mysql-libs-5.1.71-1.el6.x86_64 --nodeps或
rpm -e mysql-community-{server,client,common,libs} --nodeps 卸载多个相关软件

<!-- more -->


2). 上传 mysql 的安装包

alt + p -------> put E:/test/MySQL-5.6.22-1.el6.i686.rpm-bundle.tar

3). 解压 mysql安装包到/root/mysql目录

mkdir mysql

tar -xvf MySQL-5.6.22-1.el6.i686.rpm-bundle.tar -C /root/mysql

4). 安装相关tar文件

rpm -ivh mysql-community-{server,client,common,libs}-*

1.3 启动 MySQL 服务

1
2
3
4
5
6
7
service mysqld start

service mysqld stop

service mysqld status

service mysqld restart

1.4 登录MySQL

1
2
3
4
5
6
7
mysql 安装完成之后, 会自动生成一个随机的密码, 并且保存在一个密码文件中 : /root/.mysql_secret

mysql -u root -p

登录之后, 修改密码 :

set password = password('itcast');

2. MySQL软件结构

文件或目录 概要
/usr/bin 客户端程序和脚本
/usr/sbin mysqld 程序(服务)
/etc/my.cnf 配置文件,又称选项文件
/var/lib/mysql 数据目录,用于存放数据库的相关文件,如表空间文件等
/var/log/mysqld.log 错误日志,记录 MySQL 的启停信息及数据库错误和告警信息
/var/lib/mysql-files secure_file_priv 指定位置,MySQL 的转储与加载路径
/usr/lib/systemd/system/mysqld.service mysql 服务启动脚本,Systemd 服务
/var/run/mysqld/mysqld.pid Pid 文件,用于记录 MySQL 的主进程 id 号
/var/lib/mysql/mysql.sock 套接字文件,可用于以本地认证的方式登录
/var/lib/mysql-keyring Key 文件的存放目录,MySQL 服务读取本地 key 解密表数据
/usr/share/man Unix 手册页文件
/usr/include/mysql 开发(头)文件
/usr/lib64/mysql 库链接文件
/usr/share/mysql 其他支持文件,如错误消息和字符集文件等

###3. RPM包概要

RPM包名称 概要
mysql-community-server 数据库服务器和相关工具
mysql-community-client MySQL 客户端应用程序和工具
mysql-community-common 服务器和客户端通用的库文件
mysql-community-devel MySQL 数据库客户端应用程序开发的头文件和库文件
mysql-community-libs 用于 MySQL 数据库客户端应用程序的共享库
mysql-community-libs-compat 对于之前 MySQL 安装的共享兼容性库
mysql-community-embedded MySQL 嵌入式库
mysql-community-embedded-devel 嵌入式的 MySQL 开发头文件和库文件
mysql-community-test MySQL 服务器的测试套件

4.一些错误信息

service mysqld start 启动无反应,vim /var/log/mysqld.log 查看mysql日志有错误显示Can't open the mysql.plugin table. Please run mysql_upgrade to create it

Mysql初始化出了问题。执行以下命令

1
2
3
4
5
rm -rf /var/lib/mysql/*
mysqld --initialize --user=mysql --datadir=/var/lib/mysql

systemctl restart mysqld
systemctl status mysqld

MySQL第一次启动后会创建超级管理员账号root@localhost,初始密码存储在日志文件中,ls -al查看文件并没有生成.mysql_secret文件,运行service mysqld status显示mysql确实已经启动。mysql -u root -p发现不知到密码,只有按忘记密码思路解决。

  1. vim /etc/my.cnf

    在[mysqld]下加入 skip-grant-tables (这个意思是跳过权限验证,可免密码登录 )然后保存退出,重启mysql

  2. service mysqld restart 登录

  3. mysql -u root -p

     5.7版本前的mysql运行: update user set password=password("你的密码") where user="用户"; 
     5.7版本后的mysql运行:update mysql.user set authentication_string=password('你的密码') where user='用户';  
    
  4. exit; #退出

  5. 编辑my.cnf文件删掉或者注释skip-grant-tables 这一行,然后重启MySQL


MySQL的Bundle_RPM包安装
https://lililib.github.io/MySQL的Bundle_RPM包安装/
作者
煨酒小童
发布于
2022年3月26日
许可协议