• 第1章 数据库的四种安装方式以及cmake方式安装mysql实训


    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即可。

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

     下列安装包放在:

    链接:https://pan.baidu.com/s/1jAsgk12RWHcxWEO4cy9xYw
    提取码:c8bn

    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 tools]# rz -y
    rz waiting to receive.
     zmodem trl+C ȡ
    100%    5558 KB 5558 KB/s 00:00:01       0 Errors

    [root@localhost tools]# ls

    cmake-2.8.8.tar.gz  mysql-5.5.32

    [root@localhost tools]# tar -xf cmake-2.8.8.tar.gz

    [root@localhost tools]# rm -rf cmake-2.8.8.tar.gz

    [root@localhost tools]# ls

    cmake-2.8.8  mysql-5.5.32

    [root@localhost tools]# cd cmake-2.8.8

     [root@localhost cmake-2.8.8]# ./bootstrap

    然后进行 gmake安装

    安装依赖包

    [root@localhost tools]# yum install ncurses-devel -y

    开始安装数据库

    创建用户和组

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

      

    上传文件进行解压,然后进入文件进行配置:(首先需要有applicaation)

    cmake 
    -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 
    -DMYSQL_DATADIR=/application/mysql-5.5.32/data 
    -DMYSQL_UNIX_ADDR=/application/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

    翻译

    -DCMAKE_INSTALL_PREFIX= 安装根目录
    -DCMAKE_INSTALL_PREFIX= unix套接字目录
    -DDEFAULT_CHARSET= 默认字符集
    -DDEFAULT_COLLATION=默认编码
    -DWITH_EXTRA_CHARSETS= 额外的编码,请使用ALL来编译。
    -DWITH_MYISAM_STORAGE_ENGINE=1 编译myisam存储引擎,默认的存储引擎,不加也可以
    -DWITH_INNOBASE_STORAGE_ENGINE=1 支持InnoDB存储引擎,这个也是默认安装的
    -DWITH_READLINE=1 使用readline功能
    -DENABLED_LOCAL_INFILE=1 可以使用load data infile命令从本地导入文件
    -DMYSQL_DATADIR=数据库 数据目录

    软链接创建

    [root@localhost mysql-5.5.32]# ln -s /application/mysql-5.5.32/ /application/mysql
    

      

    选择配置文件

     [root@localhost mysql-5.5.32]# cd ..
    [root@localhost tools]# cp mysql-5.5.32/support-files/my-small.cnf /etc/my.cnf
    cp:是否覆盖"/etc/my.cnf"? y
    [root@localhost tools]#
    [root@localhost tools]# ll /application/mysql/data/
    总用量 0
    drwxr-xr-x. 2 root root 19 11月  6 01:34 test
    [root@localhost tools]# chown -R mysql.mysql /application/mysql/data/
    [root@localhost tools]# chmod -R 1777 /tmp/
    [root@localhost tools]#

    初始化数据库

     [root@localhost tools]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql
     
    [root@localhost ~]# cd /home/girl/tools/mysql-5.5.32/
    [root@localhost mysql-5.5.32]# /bin/cp support-files/mysql.server /etc/init.d/mysqld  
    [root@localhost mysql-5.5.32]# chmod +x /etc/init.d/mysqld
    [root@localhost mysql-5.5.32]# /etc/init.d/mysqld start
    Starting MySQL.. SUCCESS!
    [root@localhost mysql-5.5.32]# netstat -lntup|grep 3306 
    tcp        0      0 0.0.0.0:3306            0.0.0.0:*  
    

      

    配置环境变量及成功

    echo 'export PATH=/application/mysql/bin:$PATH' >>/etc/profile
    tail -1 /etc/profile
    source /etc/profile
    echo $PATH
    

      

    [root@localhost mysql-5.5.32]# echo 'export PATH=/application/mysql/bin:$PATH' >>/etc/profile

    [root@localhost mysql-5.5.32]# tail -1 /etc/profile

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

    [root@localhost mysql-5.5.32]# source /etc/profile

    echo $PATH[root@localhost mysql-5.5.32]# echo $PATH

    /application/mysql/bin:/application/mysql/bin:/application/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

    [root@localhost mysql-5.5.32]# mysql

    Welcome to the MySQL monitor.  Commands end with ; or g.

    Your MySQL connection id is 1

    Server version: 5.5.32 Source distribution

    Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

    Oracle is a registered trademark of Oracle Corporation and/or its

    affiliates. Other names may be trademarks of their respective

    owners.

    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    mysql>

    安装完毕

    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/

    1.  
       [root@localhost cmake-2.8.8]# ./bootstrap
      ---------------------------------------------
      CMake 2.8.8, Copyright 2000-2011 Kitware, Inc.
      ---------------------------------------------
      Error when bootstrapping CMake:
      Cannot find appropriate C compiler on this system.
      Please specify one using environment variable CC.
      See cmake_bootstrap.log for compilers attempted.
       
      ---------------------------------------------
      Log of errors: /home/girl/tools/cmake-2.8.8/Bootstrap.cmk/cmake_bootstrap.log
      ---------------------------------------------
      

        

    解决办法:

    2.8.4/Bootstrap.cmk/cmake_bootstrap.log

    报错:缺少C的编译器。

    安装gcc编译器

    可以从Linux系统的安装盘中安装,也可以简单地用yum安装

    [root@localhost ~]# yum install gcc -y

    继续cmake的安装

    1. C compiler on this system is: cc
      Error when bootstrapping CMake:
      Cannot find appropriate C++ compiler on this system.
      Please specify one using environment variable CXX.
      

        

    解决办法:

    安装gcc-c++编译器
    同样可以从Linux系统的安装盘中安装,或者简单地用yum安装

    [root@localhost ~]# yum install gcc-c++

  • 相关阅读:
    layoutSubviews, setNeedsLayout, layoutIfNeeded
    UIViewController 专题
    UIBarButtonItem
    ios method swizzling
    Method Swizzling
    ios逆向工程
    IOS中通知中心NSNotificationCenter应用总结
    Swift 进阶
    swift 2.0 语法 字符串
    C++Builder中MessageBox的基本用法
  • 原文地址:https://www.cnblogs.com/hanjiali/p/11796683.html
Copyright © 2020-2023  润新知