MySQL概述与安装使用

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL安装使用

1、官方定义的MySQL-DBA工作职责
database administrator
开发DBA *
懂至少一门开发语言 :JAVA、Python
基本SQL语句深入学习(增删改查)、数据库结构设计(建模)
高级SQL:存储过程、函数、触发器、视图、事务

运维DBA *
初级:各版本、各平台安装搭建、升级

中级:体系结构原理、基础管理(启动关闭、初始化配置文件管理、多实例管理、用户权限管理、基本SQL(增删改查))、日志管理、备份与恢复、主从复制(构建、状态监控)

高级:高可用(MGR、InnoDB Cluster)、高性能(优化)

==============================
职业要求

熟悉操作系统:主流系统

熟悉业务(开发):产品功能 用户行为触发数据库

熟悉行业:熟悉行业发展 版本 常见产品 https://db-engines.com/en/ranking

热爱数据库职业:

严谨:细心 责任心 生产环境修改参数需要经验和理论支持

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

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

2、什么是数据库管理系统(DBMS)?
RDBMS: 关系型数据库管理系统
比较适合于,安全级别要求高的数据以及关系较复杂的数据

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

3、数据库管理系统种类 *
RDBMS:
MySQL 、Oracle、MSSQL(SQL Server)、Postgresql、IBM db2

NoSQL:Not Only SQL
键-值(key-value):Redis, memcached
文档(document):Mongodb
搜索引擎: Elasticsearch

NewSQL: 分布式数据库
spanner tidb polardb

======================================
MySQL版本企业选择

1 规范

GA版本:稳定的发布版本

2 版本类型

E:企业版,收费版本,SR,偏传统行业

C:社区版,开源版本,互联网企业的选择

3 企业版本选择

一般新上的环境,会选择GA6-12月版本

4 企业主流版本*

5.6版本:5.6.34 5.6.36 5.6.38(Sep 13, 2017)  5.6.40

5.7版本:5.7.20(Sep 13, 2017) 5.7.22 5.7.24  5.7.32

8.0版本:8.0.26 (Jul 1, 2021)

5 MySQL分支*

Oracle MySQL

MariaDB 

PerconaDB

RDS(阿里)

6 软件下载

地址:https://downloads.mysql.com/archives/community/

RPM包:
二进制包:(上课使用的版本)
源码包:C++的源码,需要二次开发的时候,需要做统一配置管理的时候

====================================================
安装和基本配置
下载和上传软件到/usr/src
1 解压
tar xf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz -C /usr/local

cd /usr/local
mv mysql-5.7.20-linux-glibc2.12-x86_64/ mysql

2 修改环境变量及生效

vim /etc/profile

export PATH=/usr/local/mysql/bin:$PATH

source /etc/profile

mysql -V

3 清理历史软件包
yum remove -y mariadb-libs

4 建用户
useradd -s /sbin/nologin mysql

5 创建数据目录
mkdir -p /usr/local/mysql/data

6 修改权限
chown -R mysql.mysql /usr/local/mysql/data

7 初始化数据

`5.6 版本的初始化程序:

/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

`5.7 版本的初始化程序:

/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

--initialize参数解释:
初始化完成后,会生成临时密码(显示到屏幕上,并且会往日志中记一份)
密码复杂度:长度:超过12位 复杂度:字符混乱组合

密码过期时间180天

准备启动脚本和基础配置文件
1 准备sys-v启动脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

2 准备配置文件
vim /etc/my.cnf

[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
server_id=6
port=3306
[mysql]
socket=/tmp/mysql.sock
prompt=mysql>

3 启动数据库
service mysqld start

4 systemctl管理数据库
vim /etc/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000

systemctl restart mysqld

5 连接数据库
mysql

6 设置root的初始密码(三种方法)
mysql_secure_installation
mysqladmin -uroot -p password 123
登录数据库;grant all on . to root@localhost identified by '123';

===========================================
忘记数据库密码,破解 *

systemctl stop mysqld

mysqld_safe --skip-grant-tables & #跳过权限表

mysql

grant all on . to root@localhost identified by '123456'; #会报错

flush privileges;

grant all on . to root@localhost identified by '123456';

exit

killall -9 mysqld_safe

systemctl start mysqld

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7月前
|
存储 SQL 数据库
MySQL-存储过程概述
MySQL-存储过程概述
141 1
|
7月前
|
SQL 关系型数据库 MySQL
Mycat【Mycat部署安装(核心配置及目录结构、安装以及管理命令详解)Mycat高级特性(读写分离概述、搭建读写分离、MySQL双主双从原理)】(三)-全面详解(学习总结---从入门到深化)
Mycat【Mycat部署安装(核心配置及目录结构、安装以及管理命令详解)Mycat高级特性(读写分离概述、搭建读写分离、MySQL双主双从原理)】(三)-全面详解(学习总结---从入门到深化)
677 0
|
2月前
|
SQL 关系型数据库 MySQL
mysql主从复制概述和配置
【10月更文挑战第22天】MySQL 主从复制是一种将主服务器的数据复制到一个或多个从服务器的技术,实现读写分离,提高系统性能和可用性。主服务器记录变更日志,从服务器通过 I/O 和 SQL 线程读取并应用这些变更。适用于读写分离、数据备份和恢复、数据分析等场景。配置步骤包括修改配置文件、创建复制用户、配置从服务器连接主服务器并启动复制进程。
125 1
|
1天前
|
关系型数据库 MySQL 数据库
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
在这一章节,主要介绍两个部分,数据库相关概念及MySQL数据库的介绍、下载、安装、启动及连接。接着,详细描述了MySQL 8.0的版本选择与下载,推荐使用社区版(免费)。安装过程包括自定义安装路径、配置环境变量、启动和停止服务、以及客户端连接测试。此外,还提供了在同一台电脑上安装多个MySQL版本的方法及卸载步骤。最后,解释了关系型数据库(RDBMS)的特点,即基于二维表存储数据,使用SQL语言进行操作,格式统一且便于维护。通过具体的结构图展示了MySQL的数据模型,说明了数据库服务器、数据库、表和记录之间的层次关系。
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
|
2月前
|
存储 关系型数据库 MySQL
mysql 引擎概述
MySQL存储引擎是处理不同类型表操作的组件,InnoDB是最常用的默认引擎,支持事务、行级锁定和外键。MySQL采用插件式存储引擎架构,支持多种引擎,如MyISAM、Memory、CSV等,每种引擎适用于不同的应用场景。通过`SHOW ENGINES`命令可查看当前MySQL实例支持的存储引擎及其状态。选择合适的存储引擎需根据具体业务需求和引擎特性来决定。
|
4月前
|
SQL 数据采集 关系型数据库
七:《智慧的网络爬虫》— MySQL概述
【8月更文挑战第11天】本篇文章详细的介绍了MySQL数据库的安装与使用;并讲述了MySQL的基本操作及其应用语法
57 0
七:《智慧的网络爬虫》— MySQL概述
|
4月前
|
cobar 关系型数据库 MySQL
使用MyCat实现MySQL主从读写分离(一)概述
【8月更文挑战第11天】MySQL读写分离通过主从复制分散负载,主库负责写操作,从库承担读查询,以复制技术确保数据一致性。此策略有效缓解锁竞争,提升查询效能并增强系统可用性。实现方式包括应用层处理,简便快捷但灵活性受限;或采用中间件如MyCAT、Vitess等,支持复杂场景但需专业团队维护。
148 0
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库——基础篇总结(概述、SQL、函数、约束、多表查询、事务)一
MySQL数据库——基础篇总结(概述、SQL、函数、约束、多表查询、事务)一
49 5
|
5月前
|
SQL Oracle 关系型数据库
第1章 MySQL概述
第1章 MySQL概述
30 0
|
7月前
|
SQL 关系型数据库 MySQL
【MySQL进阶之路 | 基础篇】约束之概述
【MySQL进阶之路 | 基础篇】约束之概述

推荐镜像

更多