Install Mysql5.7 version from source code


1. Introduction to Mysql database

Mysql is a relational database management system . A relational database stores data in different tables, not in a large warehouse, so that speed and flexibility can be guaranteed. Mysql is the most commonly used standardized language in databases.

A relational database management system is a system that organizes data into rows and columns.

There are two types of databases:

  • Relational database
    Common software includes: mysql, mariadb, Oracle, SQL Server, DB2, etc.
  • Non-relational databases
    Common software includes: Redis, memcached, etc.

Package download link :

http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
http://mirrors.163.com/mysql/Downloads/MySQL-5.7/mysql-5.7.25.tar.gz


2. Install Mysql5.7 version from source code

1. Install Boost library

### 下载boost软件包
[root@localhost ~]# wget http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

### 解压软件包
[root@localhost ~]# tar  xf  boost_1_59_0.tar.gz

### 修改路径
[root@localhost ~]# mv boost_1_59_0 /usr/local/boost

2. Install dependent packages

[root@localhost ~]# yum -y install gcc-c++ ncurses-devel cmake make perlgcc autoconf automake zlib libxml libgcrypt libtool bison

3. Install Mysql

### 下载软件
[root@localhost ~]# wget http://mirrors.163.com/mysql/Downloads/MySQL-5.7/mysql-5.7.25.tar.gz

### 解压
[root@localhost ~]# tar xf mysql-5.7.21.tar.gz
[root@localhost ~]# cd mysql-5.7.21

### 预编译
[root@localhost ~]# 
 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DMYSQL_DATADIR=/data/mysql \
-DSYSCONFDIR=/usr/local/mysql \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DWITH_XTRADB_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EXTRA_CHARSETS=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_BIG_TABLES=1 \
-DWITH_DEBUG=0 \
-DENABLE_DTRACE=0 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/boost

### 编译、安装
[root@localhost ~]# make && make install

### 创建数据目录
[root@localhost ~]# mkdir -p /data/mysql
[root@localhost ~]# useradd -s /sbin/nologin mysql
[root@localhost ~]# chown -R mysql. /data/mysql

### 设置启动文件
[root@localhost ~]# \cp /mysql-5.7.21/support-files/mysql.server   /etc/init/mysqld
[root@localhost ~]# chmod +x /etc/init/mysqld

### 创建配置文件
[root@localhost ~]# vim /usr/local/mysql/my.cnf
[mysqld]
basedir=/usr/local/mysql/
datadir=/data/mysql/
port=3306
pid-file=/data/mysql/mysql.pid
socket=/data/mysql/mysql.sock

[mysqld_safe]
log-error=/data/mysql/mysql.log

### 开启服务
[root@localhost ~]# /etc/init.d/mysqld start

### 通过绝对路径登录数据库
[root@localhost ~]# /usr/local/mysql/bin/mysql

### 环境变量定义(最后一行追加)
[root@localhost ~]# vim /etc/profile
export PATH=/usr/local/mysql/bin:$PATH

###配置立即生效
[root@localhost ~]# source /etc/profile


Three, the introduction of the Mysql database installation directory

mysql main configuration directory: /usr/local/mysql
mysql data directory: /data/mysql
mysql command directory: /usr/local/mysql/bin/* For example: mysql, mysqld, etc.
mysql configuration file: /usr/local/mysql/my.cnf
mysql startup file: /usr/local/mysql/supportfiles/mysql.server or /etc/init.d/mysqld
mysql log file: /data/mysql


to sum up

The above content is a brief introduction to the Mysql database and the detailed steps of source installation.

Guess you like

Origin blog.csdn.net/m0_49854082/article/details/109627197