第一章:mysql的介绍与安装

什么是数据库管理系统

1)管理数据(增删改查)
2)存储数据
数据库管理系统的分类
1)关系型数据库(rdbms)
典型产品:mysql,oracle,mariadb,mssql(sqlserver)
2非关系型数据库(nosql)
典型产品:resis,mongodb,elasticsearch(search engine)
关系型数据库非关系型数据库功能对比

数据库管理:
1.用户管理
用户的权限
用户的密码
用户的主机域(ip)
2.库管理,表管理(统称数据管理)
涉及到sql语句
ddl、dml、dql、dcl、
3.配置管理(应用)
4.集群管理
5.监控
进程
端口
主从状态
主从延迟
sqk读写速率

第一步:准备新的服务器(db03-10.0.0.15)如果我有从开始搭建mysql,运行到现在所有的binlog,我可以将数据恢复到任意时间节点
HISTCONTROL=ignoreboth 在/etc/profile 最下面添加这句话,然后 source /etc/profile 则history的时候直接忽略前面有空格的命令和重复命令,就是history的时候不会显示在屏幕

mysql第三方工具是navicat
为什么用mysql,不用execl和world,因为mysql安全性高,性能好,可以做集群(高可用)
什么是数据:数据是可以连续的值,比如声音,图像,称为模拟数据,也可以是离散的,比如符号,文字称为数据,以二进制的形式存储于磁盘里
如果数据保存在word里,缺点
1.world存储数据,需要打开内存
2.数据查询不方便
3.安全级别不高
4.world不支持集群和主从复制
所以我们需要数据库管理系统,用来管理数据库的系统(dbms):database management system
关系型数据库和非关键性数据库的特点
关系型数据库:
1)强大的查询功能
2)强一致性:数据型安全要保持一致(事务,redo,undo)
3)二级索引(二分化,有目录)
非关系型数据库:
1)灵活,redis sentinel
2)扩展性
3)性能高
memcache不支持持久化,把数据写在缓存里,重启就直接把缓存里的数据清空了,redis支持持久化
mongodb很多公司不用mysql用这个,最接近关键型数据库的nosql
小版本是偶数版,奇数版一般给开发使用

安装mysql

**源码安装**

MySQL5.6:GA 6-12个月 小版本是偶数版本
MySQL5.7:GA 6-12个月 小版本是偶数版本 5.7.17版本以上(MGR MySQL自带的高可用)
1.1-解压

#0.安装依赖
[[email protected] ~]# yum install -y cmake gcc gcc-c++ glibc ncurses-devel autoconf libaio-devel
#1.解压
[[email protected] ~]# tar xf mysql-5.6.40.tar.gz
[[email protected] ~]# ll mysql-5.6.40
total 256
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 BUILD
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 client
drwxr-xr-x  4 7161 31415  4096 2018-02-26 20:50 cmake
-rw-r--r--  1 7161 31415 23275 2018-02-26 20:46 CMakeLists.txt
drwxr-xr-x  3 7161 31415    21 2018-02-26 20:50 cmd-line-utils
-rw-r--r--  1 7161 31415 19838 2018-02-26 20:46 config.h.cmake
-rw-r--r--  1 7161 31415 40929 2018-02-26 20:46 configure.cmake
-rw-r--r--  1 7161 31415 17987 2018-02-26 20:46 COPYING
drwxr-xr-x  2 7161 31415   312 2018-02-26 20:50 dbug
drwxr-xr-x  2 7161 31415    80 2018-02-26 20:50 Docs
-rw-r--r--  1 7161 31415 65958 2018-02-26 20:46 Doxyfile-perfschema
drwxr-xr-x  3 7161 31415   213 2018-02-26 20:50 extra
drwxr-xr-x  4 7161 31415  4096 2018-02-26 20:50 include
-rw-r--r--  1 7161 31415   333 2018-02-26 20:46 INSTALL
drwxr-xr-x  7 7161 31415  4096 2018-02-26 20:50 libevent
drwxr-xr-x  3 7161 31415   224 2018-02-26 20:50 libmysql
drwxr-xr-x  3 7161 31415   204 2018-02-26 20:50 libmysqld
drwxr-xr-x  2 7161 31415   221 2018-02-26 20:50 libservices
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 man
drwxr-xr-x 10 7161 31415   305 2018-02-26 20:50 mysql-test
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 mysys
drwxr-xr-x  2 7161 31415   300 2018-02-26 20:50 mysys_ssl
drwxr-xr-x  9 7161 31415   113 2018-02-26 20:50 packaging
drwxr-xr-x 11 7161 31415   187 2018-02-26 20:50 plugin
-rw-r--r--  1 7161 31415  2496 2018-02-26 20:46 README
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 regex
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 scripts
drwxr-xr-x  4 7161 31415 12288 2018-02-26 20:50 sql
drwxr-xr-x  5 7161 31415  4096 2018-02-26 20:50 sql-bench
drwxr-xr-x  2 7161 31415   155 2018-02-26 20:50 sql-common
drwxr-xr-x 13 7161 31415   169 2018-02-26 20:50 storage
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 strings
drwxr-xr-x  5 7161 31415  4096 2018-02-26 20:50 support-files
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 tests
drwxr-xr-x  5 7161 31415    70 2018-02-26 20:50 unittest
-rw-r--r--  1 7161 31415    88 2018-02-26 20:46 VERSION
drwxr-xr-x  3 7161 31415   298 2018-02-26 20:50 vio
drwxr-xr-x  2 7161 31415    32 2018-02-26 20:50 win
drwxr-xr-x  2 7161 31415  4096 2018-02-26 20:50 zlib

#2.生成  ./configure --prefix=/usr/local/xxx   cmake 或者 gmake
#创建目录
[[email protected] ~]# mkdir /application
[[email protected] ~]# cd mysql-5.6.40/
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 -DMYSQL_DATADIR=/application/mysql-5.6.40/data -DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0
#3.编译
make
#4.安装
make install
[[email protected] application]# ll mysql-5.6.40/
# mysql所有相关命令
drwxr-xr-x  2 root root  4096 2019-11-25 12:19 bin
# 数据存放目录
drwxr-xr-x  3 root root    18 2019-11-25 12:18 data
# mysql初始化命令目录
drwxr-xr-x  2 root root    30 2019-11-25 12:19 scripts
# 额外的文件
drwxr-xr-x  2 root root   136 2019-11-25 12:19 support-files

# 5.创建系统用户
[[email protected] scripts]# useradd mysql -s /sbin/nologin -M

# 6.做软链接
[[email protected] mysql-5.6.40]# ln -s /application/mysql-5.6.40 /application/mysql

# 7.拷贝配置文件(覆盖)
[[email protected] support-files]# cp my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y

# 8.拷贝启动脚本
[[email protected] support-files]# cp mysql.server /etc/init.d/mysqld

# 9.初始化数据库
[[email protected] scripts]# ./mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data

# 10.创建socket文件存放目录
[[email protected] scripts]# mkdir /application/mysql-5.6.40/tmp

# 11.授权
[[email protected] scripts]# chown -R mysql.mysql /application/mysql*

# 12.启动数据库
[[email protected] scripts]# /etc/init.d/mysqld start
Starting MySQL. SUCCESS! 

# 13.添加环境变量
[[email protected] scripts]# vim /etc/profile.d/mysql.sh

export PATH="/application/mysql/bin:$PATH"

# 14.加载环境变量
[[email protected] scripts]# source /etc/profile

# 15.使用systemd管理MySQL
[[email protected] scripts]# vim /usr/lib/systemd/system/mysqld.service

[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=https://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

# 16.使用systemd启动MySQL
[[email protected] scripts]# systemctl start mysqld

mysql二进制安装

# 0.安装依赖
[[email protected] ~]# yum install -y cmake gcc gcc-c++ glibc ncurses-devel autoconf libaio-devel

# 1.解压
[[email protected] ~]# tar xf mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz

# 2.创建程序安装目录
[[email protected] ~]# mkdir /application

# 3.将MySQL程序移动到安装目录
[[email protected] ~]# mv mysql-5.6.40-linux-glibc2.12-x86_64 /application/mysql-5.6.40

# 4.做软链接
[[email protected] ~]# ln -s /application/mysql-5.6.40 /application/mysql

# 5.创建系统用户
[[email protected] ~]# useradd mysql -s /sbin/nologin -M

# 6.拷贝配置文件
[[email protected] support-files]# cp my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y

# 7.拷贝启动脚本
[[email protected] support-files]# cp mysql.server /etc/init.d/mysqld

# 8.做初始化
[[email protected] scripts]# ./mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data

# 9.修改MySQL启动脚本和程序
[[email protected] scripts]# sed -i 's#/usr/local#/application#g' /etc/init.d/mysqld /application/mysql/bin/mysqld_safe

# 10.添加一个环境变量
[[email protected] scripts]# vim /etc/profile.d/mysql.sh
export PATH="/application/mysql/bin:$PATH"

# 11.加载环境变量
[[email protected] scripts]# source /etc/profile

用system管理mysql

 vim /usr/lib/systemd/system/mysqld.service                             #先关闭mysql    /etc/init.d/mysqld  stop
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=https://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
vim /etc/my.cnf
[mysqld]
basedir = /application/mysql
datadir = /application/mysql/data
systemctl start mysql                                   #有的识别mysql  ,有的识别mysqld

原文地址:https://www.cnblogs.com/wangdachu/p/12029954.html

时间: 2024-11-08 21:38:18

第一章:mysql的介绍与安装的相关文章

第一章--MySQL数据库介绍及搭建

1. MySQL数据库介绍 1.1 MySQL介绍 MySQL属于传统关系型数据库产品,它开放式的架构使得用户选择性很强,同时社区开发与维护人数众多.其功能稳定,性能卓越,且在遵守GPL协议的前提下,可以免费使用与修改,也为MySQL的推广与使用带来了更多的利好.在MySQL成长与发展过程中,支持的功能逐渐增多,性能也不断提高,对平台的支持也越来越多. MySQL是一种关系型数据库管理系统,关系型数据库的特点是将数据保存在不同的表中,再将这些表放入不同的数据库中,而不是将所有数据统一放在一个大仓

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

第一章 Mysql简介及安装和配置 ·    第一节:Mysql简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品. 使用 C和 C++编写的. 集群(Cluster),适合大规模应用 ·   第二节:Mysql安装及配置 MySql安装注意一次行安装成功,不然要处理注册表. 安装选择编码格式为GBK或UTF-8. 安装MySql图形界面(Navica或MySQlog). p.MsoNormal,li.MsoNormal,div.Mso

MySQL性能调优与架构设计——第1章 MySQL 基本介绍

MySQL性能调优与架构设计——第1章 MySQL 基本介绍 前言:作为最为流行的开源数据库软件之一, MySQL 数据库软件已经是广为人知了. 但是为了照顾对MySQL还不熟悉的读者,这章我们将对 MySQL 做一个简单的介绍.主要内容包括MySQL 各功能模块组成,各模块协同工作原理, Query 处理的流程等. 1.1 MySQLServer 简介 1.1.1 什么是 MySQLMySQL 是由MySQL AB公司(目前已经被SUN公司收归麾下,SUN已经被Oracle收购)自主研发的,目

Mysql数据库介绍、安装和配置文件

Mysql数据库介绍.安装和配置文件 MySQL数据库介绍 mysql是开源关系型数据库,遵循GPL协议. mysql的特点是性能卓越且服务稳定,开源,无版本限制,成本低,单进程多线程,多用户,基于C/S(客户端/服务端)架构,安全可靠,插入式存储引擎. mysql的另个版本为MariaDB,MariaDB是单进程,多线程的,提供了诸多扩展和新特性,提供了较多测试组件并且同样开源. mysql系统结构 一.逻辑模块组成 MySQL 可以看成是二层架构. 第一层我们通常叫做SQL Layer,在M

一周学会mysql:第一章mysql简介

mysql是支持众所周知的sql(结构化查询语言)数据库语言的一个关系数据库 数据库是由持久性数据的某些集合组成的,由数据库管理系统管理 数据库专用语言把命令传递给数据库服务器,这种语言叫数据库语言 NULL值:未知的值(空值),部要和0混淆了 主键用来唯一标识表中的一列,表中不可能有2个不同行在他们的主键上具有相同的值,主键必须有个值 候选键:表中包含多个可以作为主键的列,但只有其中一个可以作为主键 替换键:不是表格主键的候选键. 外键:是表中的一列,该列是另外一个表的主键内容的一个子集 一周

第一章 : Android Studio 介绍 [Learn Android Studio 汉化教程]

摘自:http://ask.android-studio.org/?/question/789,为便于学习重新整理.. 本章将引导您完成安装和设置开发环境,然后你就可以跟随本书的例子和课程学习. 首先,您将安装被称为Java开发工具包(JDK)的必要组件. 然后你要下载和安装Android Studio以及Android软件开发工具包(SDK),这些都是开发Android应用程序所必需的工具. 接着,我们将向你展示如何使用新建项目向导来创建一个简单的项目HelloWorld. 最后,我们将向你展

mysql的介绍;安装及基本配置;mysql数据库运行必备技能

一.MySQL的介绍 1. 数据库:数据库集中存放位置 1) 常见的数据库类型:关系型(mysql.oracle.SQLserver2008,DB2),树型(windows注册表).非关系型(NoSQL). 2) 关系型数据库对象:数据记录-存->表à存à数据库:表分为数据库,关系表 2. MySQL是开源的关系型数据软件,目前由oracle公司维护,特点是:多线程.多用户.基于C/S架构(客户端/服务器),简单易用.查询速度快,安全可靠. 二.安装及基本配置: 1. 安装 1) 安装依赖ncu

MySQL管理工具MySQL Utilities — 介绍与安装(1)

MySQL Utilities介绍 MySQL Utilities 提供一组命令行工具用于维护和管理 MySQL 服务器,包括: 管理工具 (克隆.复制.比较.差异.导出.导入) 复制工具 (安装.配置) 一般工具 (磁盘使用情况.冗余索引.搜索元数据) MySQL Utilities是一系列的命令行工具以及Python库更容易完成管理的任务.库是用Python语言写的,这就意味着不需要安装其他任何工具和库.当前是基于Python2.6版本设计的,不支持Python3.1版本. MySQL Ut

数据库---mysql的介绍和安装

MySQL数据库 一.简介: mysql是数据库管理软件:套接字:服务端,客户端 支持并发:操作得是共享得数据 处理锁,数据安全,性能 用别人得软件,得照着别人得规范,组织自己得语法规则 二.概述: 数据库服务器:运行数据库管理软件的计算机 数据库管理软件:mysql,oracle,db2,slqserver 库:文件夹 表:   文件 记录:事物一系列典型的特征:egon,male,18,oldgirl 数据:描述事物特征的符号 三.MySQL介绍: MySQL是一个关系型数据库管理系统,由瑞