数据库管理系统介绍与mysql源码安装

数据库管理系统

数据库管理系统种类

1.RDBMS(关系型数据库)的特点

  • 二维表
  • 典型的产品Oracle传统企业,Msyql是互联网企业
  • 数据存取通过SQL
  • 最大特点,数据安全性方面强(ACID)
  • 强大查询功能,强一致性,二级索引

2.NoSQL(非关系型数据库)的特点

  • 不是否定关系型数据库,做关系型数据库的的补充。
  • 灵活性,扩展性,性能
  • 现在也在提升安全性和使用功能。
  • 典型产品:Redis(持久化缓存)、MongoDB(最接近关系型数据的NoSQL)、Memcached
  • 管理不适用SQL管理,而是用一些特殊的API或数据接口。

3.NoSQL的分类、特点、典型产品

  • 键值(KV)存储:Memcached、Redis
  • 列存储(column-oriented):HBASE(新浪,360)、Cassandra(200台服务器集群)
  • 文档数据库(document-oriented):MongoDB(最接近关系型数据库的NoSQL)
  • 图形存储(Graph):Neo4j

MySQL安装方式

1.RPM、Yum:安装方便、安装速度快,无法定制
2.二进制:不需要安装,解压即可使用,不能定制功能
3.编译安装:可定制,安装慢。

  • 5.5之前:./configure make makeinstall
  • 5.5之后:cmakegmake

4.先编译,然后制作rpm,制作yum库,然后yum安装

  • 简单、速度快、可定制,比较复杂制作时间长

企业选择安装方式

  • 中小企业:以上方式都可以,运维偏向编译,dba偏向选择二进制。
  • 大型企业:可以选择4

MySQL源码安装

1.安装依赖

yum install -y ncurses-devellibaio-devel

2.安装cmake

yum install cmake–y

3.新建mysql用户

useradd-s /sbin/nologin-M mysql

4.下载mysql安装包

wget https://downloads.mysql.com/archives/get/file/mysql-5.6.42.tar.gz

5.解压

tar xf mysql-5.6.42.tar.gz 

6.使用cmake编译

cd mysql-5.6.42/
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.42 \
-DMYSQL_DATADIR=/application/mysql-5.6.42/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.42/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
#进行安装
make && make install

7.进行配置并启动mysql

#制作软链接
ln -s /application/mysql-5.6.42/ /application/mysql
#拷贝配置文件到/etc
cp support-files/my-default.cnf /etc/my.cnf
#初始化数据库
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql
#创建关键目录并设置权限:
mkdir -p /application/mysql/tmp
chown -R mysql.mysql /application/mysql/
#复制启动脚本到/etc/init.d/mysqld
cp support-files/mysql.server /etc/init.d/mysqld
#启动数据库
/etc/init.d/mysqld start
#配置环境变量
echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile
source /etc/profile
#设置密码:
mysqladmin -uroot password 'oldboy123'
mysql-uroot -poldboy123

8.安装完后清理用户及无用数据库(基本优化)

select user,hostfrom mysql.user;
drop user ''@'db02';
drop user ''@'localhost';
drop user 'root'@'db02';
drop user 'root'@'::1';
select user,hostfrom mysql.user;
drop database test;
show databases;
posted @ 2019-05-10 16:54  游走在边缘的人  阅读(202)  评论(0编辑  收藏  举报