什么是数据库

数据库实际上就是一个文件集合,是一个存储数据的仓库,本质就是一个文件系统,数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查操作

数据库管理系统(DBMS)

  • RDBMS

    • 关系型数据库管理系统
    • 数据安全性要求较高的应用场景
    • Oracle/MySQL/MSSQL/PG
  • NoSQL
    • 非关系型数据库管理系统
    • 针对性能要求较高,数据安全性要求不太高的场景,一般是配合RDBMS使用的产品
    • Redis/mongo/ES
  • NewSQL
    • 分布式数据库管理系统
    • TiDB(PingCap)/Spannaer(Google)

MySQL 软件分支

  • Oracle MySQL
  • MariaDB
  • PerconaDB
  • 云数据库(RDS MySQL-阿里/腾讯DB....)

MySQL 企业版本选择

主流版本 发布时间
5.6.34 2016.10.02
5.6.38 2017.09.13
5.6.40 2018.02.26
5.7.22 2018.03.04
5.7.24 2018.10.04
5.7.26 2019.04.13

企业新环境的版本选择:

GA 版本 6-12月的产品,一般为偶数版

MySQL 二进制版本安装

  • 安装版本:MySQL 5.7.26
  • 操作系统:CentOS 7.6

下载并上传软件

[root@mysql ~]# mkdir -p /server/scripts
[root@mysql ~]# cd /server/scripts/
[root@mysql /server/scripts]# tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

解压

[root@mysql /server/scripts]# mkdir /application
[root@mysql /server/scripts]# mv mysql-5.7.26-linux-glibc2.12-x86_64 /application/mysql

处理原始环境

[root@mysql /server/scripts]# rpm -qa |grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
[root@mysql /server/scripts]# yum remove mariadb-libs.x86_64 -y
## 卸载此软件或删除/etc/my.cnf 否则会报错

创建用户

[root@mysql ~]# useradd -s /sbin/nologin mysql
[root@mysql ~]# id mysql
uid=1001(mysql) gid=1001(mysql) groups=1001(mysql)

设置环境变量(添加到尾部)

[root@mysql ~]# vim /etc/profile
export PATH=/application/mysql/bin:$PATH
[root@mysql ~]# source /etc/profile
[root@mysql ~]# mysql -V ==> 检查是否生效
mysql Ver 14.14 Distrib 5.7.26, for linux-glibc2.12 (x86_64) using EditLine wrapper

创建数据目录并授权

[root@mysql ~]# mkdir /data/mysql/data -p
[root@mysql ~]# chown -R mysql:mysql /data/
[root@mysql ~]# chown -R mysql.mysql /application/mysql/*

初始化数据(创建系统数据)

[root@mysql ~]# yum install -y libaio-devel
[root@mysql ~]# mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data

编写配置文件

[root@mysql ~]# cat >/etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/application/mysql
datadir=/data/mysql/data
socket=/tmp/mysql.sock
server_id=6
port=3306
[mysql]
socket=/tmp/mysql.sock
EOF

配置systemd管理(CentOS 7)

或者使用sysd启动方式

cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld

[root@mysql ~]# cat >/etc/systemd/system/mysqld.service<<EOF
[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=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF

启动数据库

[root@mysql ~]# systemctl start mysqld
[root@mysql ~]# systemctl enable mysqld
[root@mysql ~]# netstat -lntup |grep 3306 #查看是否启动成功

管理员密码设置

[root@db01 ~]# mysqladmin -uroot -p password 123456
Enter password: #==> 无密码,直接回车

第一章 -- MySQL简介及安装的更多相关文章

  1. 第一章 Mysql 简介及安装和配置

    Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一. ...

  2. 第一章·MySQL介绍及安装

    一.DBA工作内容及课程体系 二.MySQL课程体系介绍 三.DBA的职业素养 四.MySQL简介及安装 4.1 什么是数据? 数据(data)是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客 ...

  3. python第一章:简介与安装--小白博客

    Python简介 Python是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大型项 ...

  4. Cobalt Strike系列教程第一章:简介与安装

    Cobalt Strike是一款超级好用的渗透测试工具,拥有多种协议主机上线方式,集成了提权,凭据导出,端口转发,socket代理,office攻击,文件捆绑,钓鱼等多种功能.同时,Cobalt St ...

  5. MySQL简介及安装

    一.DBA工作内容及课程体系 二.MySQL课程体系介绍 三.DBA的职业素养 四.MySQL简介及安装 01 什么是数据? 02 什么是数据库管理系统 03 数据库管理系统种类 04 MySQL发展 ...

  6. python 教程 第一章、 简介

    第一章. 简介 官方介绍: Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程.Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使 ...

  7. 第一章 C++简介

    第一章  C++简介 1.1  C++特点 C++融合了3种不同的编程方式:C语言代表的过程性语言,C++在C语言基础上添加的类代表的面向对象语言,C++模板支持的泛型编程. 1.2  C语言及其编程 ...

  8. 【python】-- MySQL简介、安装、操作

    MySQL简介.安装.操作 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据.我们也可以将数据存储 ...

  9. MySQL(一)之MySQL简介与安装

    大家可能都在用MySQL,其实我也是在用MySQL的,但是你知道吗?大部分人都是在windows中使用,这里将介绍一下在windows中的安装分为安装包安装与MSI包安装,以及在linux中的在线安装 ...

随机推荐

  1. 一行代码让3D翻转后的文本恢复清晰

    FlashPlayer10提供的3D功能有一个相当蛋疼的问题:只要设置过rotationX.rotationY或者rotationZ属性,显示对象里面的文字(尤其是设备字体,位图文本)就会一直处于模糊 ...

  2. wait(),notify(),notifyAll()必须加锁的原因

    从语义方面解析为什么需要锁: 1.wait()方法会释放锁,如果没有先获得锁,那么如何释放? 从实际的作用: 为了预防饥饿线程的产生. 原因: // 线程A 的代码 while(!condition) ...

  3. 【洛谷 P3674】 小清新人渣的本愿(bitset,莫队)

    题目链接 因为每个数都是\(10^5\)以内,考虑直接用\(bitset\)维护. \(a-b=x\),其实就是看是否有\(p\)和\(p+x\)同时存在,直接\(bitset\)移位按位与一下就好了 ...

  4. Git提交代码解决方案

    最近做项目不再用小乌龟了,开始用git,便做了记录如下,后期可以看看自己是怎么使用的   下载安装就不说了,直接进入使用环节.   1.使用规则 git pull origin master 和 gi ...

  5. lnmp环境快速搭建及原理解析

    刚开始学习php的时候是在wamp环境下开发的,后来才接触到 lnmp 环境当时安装lnmp是按照一大长篇文档一步步的编译安装,当时是真不知道是在做什么啊!脑袋一片空白~~,只知道按照那么长的一篇文档 ...

  6. 【转载】C#中List集合SingleOrDefault和FirstOrDefault方法有何不同

    在C#的List集合类的操作过程中,有时候我们会使用到List集合的SingleOrDefault方法和FirstOrDefault等方法,这2个方法都是System.Linq.Enumerable类 ...

  7. sql server 处理特殊字符问题

    对于中文版的SQL SERVER,默认安装后使用的默认排序规则为Chinese_PRC_CI_AS,在此排序规则下,使用varchar类型来可以“正常存取”存放中文字符以及一些东南亚国家的字符, 同时 ...

  8. [ipsec][strongswan] strongswan源码分析--(〇)总体架构图

    history: 2019-06-05, 增加配置文件解析部分. 2019-06-05,增加plugin优先级排序部分. charon进程初始化阶段的流程图 约定: 实线代表流程图. 虚线代表调用栈, ...

  9. 2013.4.26 - KDD第八天

    下午上Android课,我看中秋也选这个课了,然后在上半节的时候速补了一下秦海龙师兄的那篇文章.中间休息的时候窜到了中秋那里,然后讨论了半节课现在的情况. 现在的情况是这样的: 中 秋开始是没有进行主 ...

  10. c#版本23个设计模式

    一.引言 对设计模式的学习,自己的感触还是很多的,因为我现在在写代码的时候,经常会想想这里能不能用什么设计模式来进行重构.所以,学完设计模式之后,感觉它会慢慢地影响到你写代码的思维方式.这里对设计模式 ...