MySQL介绍

MySQL是一个开放源码的小型关联式数据库管理系统。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

MySQl数据库分类

1)社区版

2)商业版

3)cluster集群

MySQL安装部署

1)编译安装

MySQL 8.0 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能!

注意:从 MySQL 5.7 升级到 MySQL 8.0 仅支持通过使用 in-place 方式进行升级,并且不支持从 MySQL 8.0 降级到 MySQL 5.7

(或从某个 MySQL 8.0 版本降级到任意一个更早的 MySQL 8.0 版本)。唯一受支持的替代方案是在升级之前对数据进行备份。

操作系统说明:CentOS 6.5

数据库版本:MySQL 8.0.0

1.1.环境准备

1 yum install ncurses-devel -y2 yum install libaio -y3 yum install glibc-devel.i686 glibc-devel -y4 yum install gcc gcc-c++ -y

说明:MySQL8.0需要用gcc的版本为 4.8以上,而centos 6.5通过yum只能安装到4.4.7,所以在安装mysql8.0之前需要手动安装更高版本的gcc,我这里以gcc-8.8.2为例:

1 wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.gz

2 tar xf gcc-4.8.2.tar.gz3 cd gcc-4.8.2

# 载编译需要的依赖包:

1 ./contrib/download_prerequisites2 ./configure --prefix=/usr/local/gcc-4.8.2/ --enable-bootstrap --enable-threads=posix --enable-languages=c,c++,objc,obj-c++

3 make &&make install

说明:make的时间会很长,安装完后,还需要将原来的gcc环境用新版本的gcc替换掉,否则mysql在安装时还是用的原来的gcc。

1 mv /usr/bin/gcc /usr/bin/gcc4472 mv /usr/bin/g++ /usr/bin/g++447

3 mv /usr/bin/c++ /usr/bin/c++447

4 mv /usr/bin/cc /usr/bin/cc4475 ln -s /usr/local/gcc-4.8.2/bin/gcc /usr/bin/gcc6 ln -s /usr/local/gcc-4.8.2/bin/g++ /usr/bin/g++

7 ln -s /usr/local/gcc-4.8.2/bin/c++ /usr/bin/c++

8 ln -s /usr/local/gcc-4.8.2/bin/gcc /usr/bin/cc9 mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak10 ln -s /usr/local/gcc-4.8.2/lib64/libstdc++.so.6.0.18 /usr/lib64/libstdc++.so.6

解决如下问题:

接着,安装boost库:

1 wget -c http://sourceforge.net/projects/boost/files/boost/1.60.0/boost_1_60_0.tar.bz2 --no-check-certificate

2 tar xf boost_1_60_0.tar.bz2\?r\=\&ts\=1479114685\&use_mirror\=ncu3 cd boost_1_60_04 ./bootstrap.sh5 ./b2 stage threading=multi link=shared6 ./b2 install threading=multi link=shared

1.2.安装mysql8.0

mysql5.1的时候用传统的.configure,make,make install 就就可以了,但是从5.5后编译安装就需要cmake,make, make install来安装,所以要安装cmake。

1 cd /home/king/tools2 wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz

3 tar zxf cmake-2.8.4.tar.gz4 cd cmake-2.8.4

5 ./configure6 make & make install

当然了,在安装软件的时候都应该先用rpm -qa | grep cmake 来查看是否已经安装,如果没有在执行以上命令。wget-c 断点续传下载文件。-O 指定目录下载(或者理解为下载到指定的目录)

1 # 下载和解压mysql2 wget -c http://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-boost-8.0.0-dmr.tar.gz

3 tar xf mysql-boost-8.0.0-dmr.tar.gz4

5 # 编译安装mysql6 cd mysql-8.0.0-dmr7 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \8 -DMYSQL_DATADIR=/usr/local/mysql/data/ -DSYSCONFDIR=\etc\mysql \9 -DWITH_INNOBASE_STORAGE_ENGINE=1\10 -DMYSQL_TCP_PORT=3306\11 -DENABLED_LOCAL_INFILE=1\12 -DEXTRA_CHARSETS=all \13 -DDEFAULT_CHARSET=utf8 \14 -DDEFAULT_COLLATION=utf8_general_ci \15 -DWITH_BOOST=/tmp/boost_1_60_0/

16 make17 make install18

19 # 新增mysql用户和组,并配置mysql用户对数据库目录的权限20 groupadd mysql21 useradd -g mysql mysql                 #也可以useradd mysql -s /sbin/nologin -M -g mysql22 chown mysql.mysql /usr/local/mysql -R23 # 初始化mysql24 cd /usr/local/mysql25 bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

26 bin/mysql_ssl_rsa_setup27

28 # 配置文件29 cp ./support-files/my-default.cnf /etc/my.cnf30 vim /etc/my.cnf                    #编辑/etc/my.conf文件31 [mysqld]32 datadir=/usr/local/mysql/data/

33 socket=/var/lib/mysql/mysql.sock34 user=mysql                        #mysql用户35 # Disabling symbolic-links isrecommended to prevent assorted security risks36 symbolic-links=0

37 pid-file=/var/run/mysqld/mysqld.pid38 log-error=/var/log/mysqld.log39

40 # 创建进程文件目录41 mkdir /var/run/mysqld42 chown mysql /var/run/mysqld/ -R43

44 # 设置环境变量45 echo "export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/sbin" >> /etc/profile46 source /etc/profile                  #./etc/profile47

48 # 设置开机启动脚本49 cd /usr/local/mysql50 cp support-files/mysql.server /etc/init.d/mysql.server51 chkconfig mysql.server on52 service mysql.server start

到此MySQl就编译安装完成,但是工作中并不常用mysql8.0,只是出于好奇,看了一看,下面是小编二进制安装MySQl亲测哦。

二进制安装MySQl

创建用户和目录

1 useradd mysql -s /sbin/nologin -M2 mkdir /application/mysql/data -p3 chown mysql.mysql /application/mysq/data/

安装mysql5.5

1 wget http://mysql.ntu.edu.tw/Downloads/MySQL-5.5/mysql-5.5.32-linux2.6-x86_64.tar.gz

2 tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz3 mv mysql-5.5.32-linux2.6-x86_64 /application/mysql-5.5.32

4 ln -s /application/mysql-5.5.32 /application/mysql

设置mysql环境变量

1 echo 'PATH=$PATH:/usr/local/mysql/bin' >>/etc/profile2 source /etc/profile 或者./etc/profile

初始化数据库

1 cd /application/mysql2 ./scripts/mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data/

3 cp support-files/my-small.cnf /etc/my.cnf4 cp support-files/my.server /etc/init.d/mysqld5 chmod +x /etc/init.d/mysqld6 /etc/init.d/mysqld start