MySQL系列之——MySQL介绍和安装、MySQL简介及产品线、安装方式(源码安装 rpm方式 yum方式 通用二进制安装)

一 MySQL介绍和安装

1.1 什么是数据?

数据:文字、图片、视频。。。人类认知的数据表现方式
计算机:二进制、16进制的机器语言
基于数据的重要性和复杂性的不同,我们可能有不同的管理方式。

哪些数据是适合存储到数据库的呢?
重要性比较高的
关系较复杂的数据

1.2 什么是数据库管理系统(DBMS)?

RDBMS: 关系型数据库管理系统
比较适合于,安全级别要求高的数据以及关系较复杂的数据

NoSQL:非关系型数据库管理系统
适合于高性能存取数据,一般是配合RDBMS进行使用的
针对大数据处理分析,分布式架构更加擅长

1.3 数据库管理系统种类

RDBMS:Relational Database Management System,关系数据库管理系统
MySQL 、Oracle、MSSQL(SQL Server)、PostgreSQL
 
NoSQL:Not Only SQL
键-值(key-value):Redis, memcached
文档(document):Mongodb

二 MySQL简介及产品线

2.1 MySQL行业主流版本

5.5 :企业基本不用了
5.6****:四星 5.6.36  5.6.38 5.6.40 ...5.6.46
5.7*****:五星 5.7.20 5.7.22 ....5.7.28 5.7.30(5.7版本最新)
8.0(最新)**:两星 8.0.11 开始,之前都是测试版 ...8.0.20

img

2.2 企业版本选择(MySQL分支版本)

# 分支
Oracle:
      MySQL官方版
红帽  :
      MariaDB:红帽维护的分支
Percona:
      PerconaDB:Percona公司维护的分支
# 版本
企业版:收费
社区版:开源免费

2.3 版本选择建议

1.一般选择官方主流版本:5.6,5.7 
2.GA(稳定发布版)
3.6-12月的产品版本

2.4 课程版本:

5.7.30  二进制安装,其他安装方式自己扩展

2.5 下载(社区版源码安装)

企业版:Enterprise 互联网行业一般选择社区版
源码包:source code    .tar.gz   
## 下载-官网
1 https://www.mysql.com/
2 选择downloads
  -https://www.mysql.com/downloads/
3 底部选择:MySQL Community (GPL) Downloads »
4 只能下到最新版:MySQL Community Server
5 选择Download Archives
6 选择MySQL Community Server
7 选择版本,平台下载即可

img
img
img
img
img

2.6 安装方式

1 源码安装:编译安装,非常慢,需要研究源码
2 rmp,yum 安装:配置官方yum源,直接yum install 
3 通用二进制版:解压即用,绿色版(企业用)

源码安装

img

rpm方式

img

yum方式

# 配置源
# Enable to use MySQL 5.7
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
  
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
  
# sudo yum install mysql-community-server
# sudo systemctl start mysqld.service
# sudo systemctl status mysqld.service
# sudo grep 'temporary password' /var/log/mysqld.log
# mysql -uroot -p
# ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

通用二进制安装

# 1 环境准备
一台centos 7.6虚拟机,能上网,

# 2 清理一下环境 
rpm -qa |grep mariadb  
yum remove mariadb-libs
# 3 创建用户和组
useradd mysql
useradd mysql -s /sbin/nologin # 不能登录,没有家目录
id mysql

# 4 创建相关目录(软件目录,数据目录)
# 软件目录
mkdir -p /app/database/
# 数据目录
mkdir -p /data/3306
# 日志目录
mkdir -p /binlog/3306
# mkdir -p /app/database/ /data/3306/ /binlog/3306
# 生产建议:软件和数据和日志不要放在同一个地方,一般数据放在另一块磁盘上

# 5 设置权限
chown -R mysql.mysql /app/ /data/ /binlog

# 6 上传并解压软件到 /app/databases/
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
tar xzf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz

# 7 建立软连接
ln -s mysql-5.7.30-linux-glibc2.12-x86_64 mysql

# 8 设置环境变量
-bin # mysql执行的命令
-support-files # 存放脚本
# 把bin目录设置到环境变量中
vim /etc/profile
#添加一行
export PATH=/app/database/mysql/bin:$PATH
# 生效配置
source /etc/profile
# 验证
mysql -V

# 9 初始化系统库表(系统数据,数据库要启动,必须依赖一些表,系统表)
mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3306/
#会报错:
mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
报错原因: Linux系统中缺少libaio-devel 软件包
#解决:
yum install -y libaio-devel

# 如果再执行一下上面的初始化命令,会报data目录不为空,需要删除数据目录再执行

#########补充:
# 1 初始化数据自带密码
# 5.7开始,MySQL加入了全新的 密码的安全机制:
1.初始化完成后,会生成临时密码(显示到屏幕上,并且会往日志中记一份)
2.密码复杂度:长度:超过12位? 复杂度:字符混乱组合
3.密码过期时间180# 初始化数据,初始化管理员的临时密码
mysqld --initialize  --user=mysql --basedir=/app/database/mysql --datadir=/data/3306/
# 会打印出密码,记住,然后需要修改root密码后才能正常使用数据库
# S44GNgK!h.qg
#2 5.6初始化的区别
./mysql/scripts/mysql_install_db  --user=mysql --basedir=/app/database/mysql --datadir=/data/3306/

# 10 编写默认配置文件
vim /etc/my.cnf
[mysqld]
user=mysql
basedir=/app/database/mysql
datadir=/data/3306/
server_id=6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock

# 11 配置启动脚本
cd /app/database/mysql/support-files
./mysql.server start
# copymysql的启动脚本至系统管理目录中
cp mysql.server /etc/init.d/mysqld
# centos6中,使用service 启动
service mysqld start
service mysqld stop
service mysqld restart
# centos7中:使用systemctl启动
chkconfig --add mysqld # 把mysqld的脚本添加到systemctl的管理中
systemctl start mysqld
###至此,启动方式可以是
service mysqld start
systemctl start mysqld
/etc/init.d/mysqld start
/app/database/mysql/support-files/mysql.server start


# 12 在登陆前修改密码(使用mysqld --initialize 初始化的数据)
mysqladmin -uroot -p password lqz1234.
输入原始密码
posted @ 2022-03-07 12:12  喝茶看猴戏  阅读(28)  评论(0)    收藏  举报  来源