mysql 数据库编译安装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 数据库编译安装相关的知识,希望对你有一定的参考价值。

  1. 下载mysql数据库,从官网下载

这里下载的是mysql-5.1.51.tar.gz

2.下载cmake,下载地址是http://www.cmake.org/files/v2.8/cmake-2.8.12.1.tar.gz

把上面的两个软件放到/usr/local/src里。

3.使用yum安装一些必须的包。

yum install -y make apr* autoconf automake curl curl-devel gcc gcc-c++ gtk+-devel zlib-devel openssl openssl-devel pcre-devel gd kernel keyutils patch perl kernel-headers compat*  cpp glibc libgomp libstdc++-devel keyutils-libs-devel libsepol-devel libselinux-devel krb5-devel  libXpm* freetype freetype-devel freetype* fontconfig fontconfig-devel  libjpeg* libpng* php-common php-gd gettext gettext-devel ncurses* libtool* libxml2 libxml2-devel patch policycoreutils bison

4.编译安装cmake


cd /usr/local/src


tar -zxvf cmake-2.8.12.tar.gz


cd cmake-2.8.12


./configure


make


make install


5.安装mysql

groupadd mysql#添加 mysql组


useradd -g mysql mysql -s /bin/false#添加mysql到mysql组,不允许mysql用户直接登录系统


mkdir -p /data/mysql#创建数据库存放目录


chown -R mysql:mysql /data/mysql#设置mysql数据库目录权限


mkdir -p /usr/local/mysql#创建mysql安装目录


cd /usr/local/src


下面解释一下数据库常用的配置选项。

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql    ----指定残可安装路径(默认的就是/usr/local/mysql)

-DMYSQL_DATADIR=/data/mysql          ----mysql的数据文件路径

-DSYSCONFDIR=/etc                ----配置文件路径

-DWITH_INNOBASE_STORAGE_ENGINE=1        ----使用INNOBASE存储引擎 

-DWITH_ARCHIVE_STORAGE_ENGINE=1            ----常应用于日志记录和聚合分析,不支持索引

-DWITH_BLACKHOLE_STORAGE_ENGINE=1      ----黑洞存储引擎

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1   编译过程中取消一些存储引擎指令介绍

-DWITHOUT_FEDERATED_STORAGE_ENGINE=1

-DWITHOUT_PARTITION_STORAGE_ENGINE=1

-DWITH_READLINE=1      ----支持批量导入mysql数据 

-DWITH_SSL=system      ----mysql支持ssl会话,实现基于ssl的数据复

-DWITH_ZLIB=system      ----压缩库

-DWITH_LIBWRAP=0        ----是否可以基于WRAP实现访问控制

-DMYSQL_TCP_PORT=3306                  ----默认端口

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock      ----默认套接字文件路径

-DENABLED_LOCAL_INFILE=1                ----是否启用LOCAL_INFILE功能

-DEXTRA_CHARSETS=all  ----是否支持额外的字符集

-DDEFAULT_CHARSET=utf8                  ----默认编码机制

-DDEFAULT_COLLATION=utf8_general_ci    ----设定默认语言的排序规则

-DWITH_DEBUG=0                          ----DEBUG功能设置

 -DENABLE_PROFILING=1                    ----性能分析功能是否启用

tar -zxvf mysql-5.6.12#解压文件


cd mysql-5.6.12


 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=bundled -DWITH_ZLIB=bundled -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci#配置


make && make install#编译与安装


7.cp /support-files/mysql.server /etc/init.d/mysqld#复制启动脚本到/etc/init.d/目录下并重命名


8.chmod +x /etc/init.d/mysqld#赋予脚本执行权限


9.chkconfig --add mysqld#添加为sysV服务


10.chkconfig mysqld on#开机自启动


11./usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql#mysql 初始化,basedir制定安装目录,datadir制定数据目录,user指定用户。


12.cd /data/mysql# 切换到数据目录


ls#查看生成的文件


ibdata1  ib_logfile0  ib_logfile1  mysql  performance_schema  test#该目录下一般有下面的几个文件。


13.vim /usr/local/mysql/my.cnf#修改/usr/local/mysql下面的my.cnf文件。

加入下面的参数配置,主要是设置一点端口和套接字等。

binlog-format=ROW
log-bin=master-bin.log
log-slave-updates=true
gtid-mode=on
enforce-gtid-consistency=true
master-info-repository=TABLE
relay-log-info-repository=TABLE
sync-master-info=1
slave-parallel-workers=2
binlog-checksum=CRC32
master-verify-checksum=1
slave-sql-verify-checksum=1
binlog-rows-query-log_events=1
server-id=1
report-port=3306
port=3306
datadir=/data/mysql
socket=/tmp/mysql.sock
report-host=master.magedu.com


14.service mysqld start#启动数据库


15.mysql命令添加到全局环境变量中

vim /etc/profile.d/mysql.sh

export PATH=$PATH:/usr/local/mysql/bin


16.重新读取环境变量

source /etc/profile


17.输出mysql的man手册到man命令的查找路径

vim /etc/man.config

MANPATH /usr/local/mysql/man#加一行


18.输出mysql的库文件

vim /etc/ld.so.conf.d/mysql.conf 

ldconfig -v

/usr/local/mysql/lib:
 libmysqlclient.so.18 -> libmysqlclient_r.so.18.0.0


19.输出mysql的头文件到系统文件

ln -sv /usr/local/mysql/include/ /usr/include/mysql

"/usr/include/mysql" -> "/usr/local/mysql/include/"


20.测试

netstat -tnlp|grep :3306

tcp        0      0 :::3306                     :::*                        LISTEN      17973/mysqld       


21.输入命令mysql

[[email protected] mysql]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.12-log 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> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.22 sec)




本文出自 “服务器软件升级” 博客,请务必保留此出处http://shamereedwine.blog.51cto.com/5476890/1748873

以上是关于mysql 数据库编译安装的主要内容,如果未能解决你的问题,请参考以下文章

MySQl编译安装与二进制安装介绍

mysql 5.6.38 数据库编译安装

Centos7编译安装Mysql

cmake 编译安装mysql

mysql编译安装

MySQL5.5编译安装