Mysql的编译安装以及简单介绍


本文摘自PHP中文网,作者黄舟,侵删。

==========MYSQL工作原理图:

1》数据库简介:简单的说数据库(database)就是一个存储数据的仓库,它将数据按照特定的规律存储到磁盘上,通过数据库管理系统,能够有效的管理存储在数据库中 的数据;
SQL语言: DBMS是通过SQL语言来进行数据库管理的。SQL语言是一种查询和设计语言,主要用于存储数据,查询数据 更新和管理关系数据库;
  SQL语言总共分为三个部分

DDL(Data Definition Language)语句,用于定义数据库表、试图索引和触发器等等
      create
      alter
      drop
      rename
      truncate
      comment
  DML(Data Maniplulation Language)语句用于插入数据,查询数据、更新数据和删除数据
      select
      insert
      update
      delete
  DCL(Data Control Language)语句,用于控制用户的访问权限
      grant
      revoke

常见的数据库系统有哪些:
    1.甲骨文Oracle
    2.IBM的DB2
    3.Sybase
    4.微软Access和SQL Server
    5.开源PostgreSQL
    6.开源Mysql

Mysql特性:
    1.跨平台,支持多种操作系统,AIX FreeBSD HP-UX Linux MacOS NovellNetware OpenBSD Solaris windows 等等
    2.支持多线程,可以充分的利用硬件资源(CPU资源)
    3.支持大型数据库,可以处理拥有上千万条大型数据库。
    4.支持多种插件式存储引擎

mysql-server-5.6

    1)InnoDB现在可以限制大量表打开的时候内存占用过多的问题(比如这里提到的)(第三方已有补丁)
    2)InnoDB性能加强。如分拆kernel mutex;flush操作从主线程分离;多个perge线程;大内存优化等
    3)InnoDB死锁信息可以记录到 error 日志,方便分析
    4)MySQL5.6支持延时复制,可以让slave跟master之间控制一个时间间隔,方便特殊情况下的数据恢复。
    5)表分区功能增强
    6)MySQL行级复制功能加强,可以降低磁盘、内存、网络等资源开销(只记录能确定行记录的字段即可)
    7)Binlog实现 crash-safe
    8)复制事件采用crc32校验,增强master/slave 复制数据一致性
    9)新增 log_bin_basename (以前variables里面没有binlog位置信息,对数据库的监管很不方便)

2》编译安装MYSQL:
    1>安装依赖包:
      

1

yum install gcc gcc-c++ ncurses-devel perl cmake bison

    2>创建用户:
     

1

2

3

4

5

6

# groupadd mysql

             # useradd mysql ?Cg mysql ?Cs /sbin/nologin

             #mkdir -p /usr/local/mysql //Mysql的安装目录

             #mkdir -p /data/mysqldb  //Mysql数据目录

             #mkdir -p /data/mysqldb/binlog //创建BINLOG日志目录  

             #mkdir -p /data/mysqldb/log   //创建MYSQL 日常LOG目录

    3>安装Mysql:
      

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#tar -xvf mysql-5.6.31.tar.gz             

#cd mysql-5.6.31

                            

                           cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \           

                           -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \          

                           -DSYSCONFDIR=/etc \          

                           -DDEFAULT_CHARSET=gbk \          

                           -DDEFAULT_COLLATION=gbk_chinese_ci \          

                           -DWITH_INNOBASE_STORAGE_ENGINE=1  \          

                           -DWITH_ARCHIVE_STORAGE_ENGINE=1 \          

                           -DWITH_BLACKHOLE_STORAGE_ENGINE=1  \          

                           -DWITH_FEDERATED_STORAGE_ENGINE=1 \          

                           -DWITH_PARTITION_STORAGE_ENGINE=1  \          

                           -DMYSQL_DATADIR=/data/mysqldb  \          

                           -DMYSQL_TCP_PORT=3306  \

***注意:重新运行配置,需要删除CMakeCache.txt文件

阅读剩余部分

相关阅读 >>

mysql case when怎么使用?

mysql中常用存储引擎有哪些?它们相互之间有什么区别?

浅谈选择mysql存储引擎的标准

navicat for mysql是什么

mysql修改语句

mysql router的安装部署

开发过程中mysql常见问题小结

mysql字符串如何转date日期

mysql truncate用法详解

mysql表锁和行锁的区别是什么

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...