第1章 数据库的安装

1.1 数据库的介绍

  数据库为存放数据的仓库。存放数据的数据库比较特殊,这个仓库是按照一定的数据结构来组织,存储的,可以通过数据库提供的很多种方式来管理数据库的数据。

1.2 数据库的分类

数据库分三类,分贝为层次式数据库,网络式数据库和关系型数据库,而在今天,最常用的数据库模型主要有两种,关系型数据库和非关系型数据库。

1.2.1关系型数据库的介绍

关系型数据库模型是把复杂的数据结构结合为简单的二元关系,在数据库种,对数据的操作几乎全部建立在一个或多个关系表格上,通过对这些关系大的表格分类,合并。连接或者选取等运算实现数据的管理。

   大家最常见的数据库为mysql和Oracle数据库。

1.2.2非关系型数据库的介绍

非关系型数据库被称为NoSQL数据库,随着网络的兴起,传统的关系型数据库对于规模日益扩大的海量数据,超大规模和高并发的微博微信等,暴露了很多难以克服的问题,尤其是现在出现了特定场景/以高性能和使用便利为目的的功能特异化的数据产品。非关系型的数据库就是这样的情景中诞生并迅速发展。

1.3数据库的安装方式

1.3.1 yum的方式安装数据库

Yum方式安装Mysql安装简单,只需要执行yum install mysql-server即可。

这种安装使用于对数据库要求不高的场合,例如开发不大,公司内部,企业内部的一些应用场景。

1.3.2常规方式编译安装MySQL

所谓的常规方式编译(5.1以及以前的产品线)安装MySQL就是延续早期的三部曲安装的方式。

创建用户组和相应的虚拟用户

[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd mysql -g mysql -M -s /sbin/nologin
[root@localhost ~]# id mysql
uid=1004(mysql) gid=1004(mysql) 组=1004(mysql)

  

安装MySQL的软件

[root@localhost ~]# mkdir -p /home/girl/tools
[root@localhost ~]# cd /home/girl/tools
 [root@localhost tools]# rz -y
rz waiting to receive.
 zmodem trl+C ȡ

  

  

100%   23480 KB 23480 KB/s 00:00:01       0 Errors

 [root@localhost tools]# tar xf mysql-5.1.72.tar.gz

[root@localhost tools]# ls

lrzsz-0.12.20  lrzsz-0.12.20.tar.gz  mysql-5.1.72  mysql-5.1.72.tar.gz

[root@localhost tools]# ls -l

总用量 23768

drwxrwxrwx  9  406 disk      4096 10月 24 05:33 lrzsz-0.12.20

-rw-r--r--  1 root root    280938 12月 31 1998 lrzsz-0.12.20.tar.gz

drwxrwxrwx 32 7155 wheel     4096 9月  10 2013 mysql-5.1.72

-rw-r--r--  1 root root  24044338 10月 24 2019 mysql-5.1.72.tar.gz

配置文件

./configure \
--prefix=/application/mysql5.1.72/data \
--with-unix-socket-path=/application/mysql5.1.72/tmp/mysql.sock \
--localstatedir=/application/mysql5.1.72/data \
--enable-assembler \
--enable-thread-safe-client \
--with-mysqld-user=mysql \
--with-big-tables  \
--without-debug \
--with-pthread \
--enable-assembler \
--with-extra-charsets=complex \
--with-readline \
--with-ssl \
--with-embedded-server \
--enable-local-infile \
--with-plugins=partition,innobase \
--with-mysqld-ldflags=-all-static \
--with-client-ldflags=-all-static
#--with-plugin-PLUGIN \

不报错就可以就可以安装了make && make install

1.3.3 cmake的安装

由于MySQL5.5.xx-5.6.xx产品系列的特殊性,所以编译的方式也和早期的不同,采用cmake和gmake方式安装编译
root@localhost ~]# ls
anaconda-ks.cfg  mysql-5.5.32.tar.gz  perl5
[root@localhost ~]# tar  mysql-5.5.32.tar.gz
tar: 旧选项“g”需要参数。
请用“tar --help”或“tar --usage”获得更多信息。
[root@localhost ~]# tar zxf mysql-5.5.32.tar.gz
[root@localhost ~]# cd  mysql-5.5.32添加编译安装,然后进行
make&&make install

  

1.3.4 采用二进制方式进行免编译安装

采用二进制的方式,适用于各类的mysql产品的系列,二进制免安装比较简单方便,直接解压下载的安装包,初始化完成安装启动。

1.4 mysql 5.5编译安装(cmake方式安装)

查看自己电脑的信息

[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

安装cmake工具

[root@localhost tools]# yum install cmake -y

开始安装数据库

创建用户和组

[root@localhost ~]# groupadd mysql
groupadd:“mysql”组已存在
[root@localhost ~]# useradd mysql -s /sbin/nologin -M -g mysql
useradd:用户“mysql”已存在

上传文件进行解压,然后进入文件进行配置:

 cmake . -DCMAKE_INSTALL_PREFIX=/app/mysql-5.5.32 \
-DMYSQL_DATADIR=/app/mysql-5.5.32/data \
-DMYSQL_UNIX_ADDR=/app/mysql-5.5.32/tmp/mysql.sock \
 -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \
 -DENABLED_LOCAL_INFILE=ON \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FAST_MUTEXES=1 \
-DWITH_ZLIB=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_READLINE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0

软链接创建之后,安装完毕

MySQL错误排查

  1. Linking CXX executable pfs_connect_attr-t

../../../sql/libsql.a(handler.cc.o): In function `get_ha_partition(partition_info*)‘:

/data0/software/mysql-5.5.32/sql/handler.cc:460: undefined reference to `ha_partition::ha_partition(handlerton*, partition_info*)‘

/data0/software/mysql-5.5.32/sql/handler.cc:462: undefined reference to `ha_partition::initialize_partition(st_mem_root*)‘

../../../sql/libsql.a(sql_partition_admin.cc.o): In function `Sql_cmd_alter_table_truncate_partition::execute(THD*)‘:

/data0/software/mysql-5.5.32/sql/sql_partition_admin.cc:822: undefined reference to `ha_partition::truncate_partition(Alter_info*, bool*)‘

collect2: ld 返回 1

make[2]: *** [storage/perfschema/unittest/pfs_connect_attr-t] 错误 1

make[1]: *** [storage/perfschema/unittest/CMakeFiles/pfs_connect_attr-t.dir/all] 错误 2

make: *** [all] 错误 2

解决方法:

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/software/mysql -DWITHOUT_PARTITION_STORAGE_ENGINE=0

make && make install

rm -rf /application/ mysql-5.5.32/

猜你喜欢

转载自www.cnblogs.com/hanjiali/p/11796683.html
今日推荐