3. mysql 数据库 编译安装(5.7版本)
查询mysql版本号:在mysql命令行内执行
status;
select version();
select@@version;
[root@localhost ~]# mysql -V 不登录查询
mysql Ver 14.14 Distrib 5.7.31, for Linux (x86_64) using EditLine wrapper
6.mysql安装环境
[root@localhost ~]# mkdir -p /usr/local/src/mysql
[root@localhost ~]# yum -y install gcc gcc-c++ glibc automake autoconf libtool make
[root@localhost ~]# cd /usr/local/src/mysql
[root@localhost mysql]# wget https://github.com/Kitware/CMake/releases/download/v3.14.5/cmake-3.14.5.tar.gz
[root@localhost mysql]# wget https://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
[root@localhost mysql]# wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.27.tar.gz
[root@localhost mysql]# ls
boost_1_59_0.tar.gz cmake-3.14.5.tar.gz mysql-5.7.27.tar.gz
[root@localhost mysql]# tar zxvf cmake-3.14.5.tar.gz 先解压cmake
[root@localhost mysql]# cd cmake-3.14.5
[root@localhost cmake-3.14.5]# ./bootstrap
[root@localhost cmake-3.14.5]# gmake && gmake install
[root@localhost cmake-3.14.5]# cmake -version
cmake version 3.14.5
CMake suite maintained and supported by Kitware (kitware.com/cmake).
[root@localhost mysql]# tar xvf boost_1_59_0.tar.gz -C /usr/local/
[root@localhost local]# cd /usr/local/
[root@localhost local]# mv boost_1_59_0/ boost
[root@localhost local]# cd boost/
[root@localhost boost]# yum -y install gcc gcc-c++ ncurses ncurses-devel bison make
[root@localhost boost]# mkdir -p /database/mysql/{data,tmp,binlog,logs}
[root@localhost boost]# tree -L 2 /database/
/database/
└── mysql
├── binlog
├── data
├── logs
└── tmp
5 directories, 0 files
[root@localhost boost]# groupadd mysql
[root@localhost boost]# useradd mysql -s /sbin/nologin -M -g mysql
[root@localhost boost]# id mysql
uid=1000(mysql) gid=1000(mysql) groups=1000(mysql)
[root@localhost mysql]# cd /usr/local/src/mysql
[root@localhost mysql]# tar xvf mysql-5.7.27.tar.gz
[root@localhost mysql]# cd mysql-5.7.27
cmake . -DCMAKE_INSTALL_PREFIX=/database/mysql \
-DMYSQL_DATADIR=/database/mysql/data \
-DMYSQL_UNIX_ADDR=/database/mysql/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-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_ZLIB=bundled \
-DWITH_EMBEDDED-SERVER=1 \
-DWITH_DEBUG=0 \
-DWITH_BOOST=/usr/local/boost
[root@localhost mysql]# make install
[root@localhost mysql-5.7.27]# echo 'export PATH=/database/mysql/bin:$PATH' >> /etc/profile
[root@localhost mysql-5.7.27]# tail -1 /etc/profile
export PATH=/database/mysql/bin:$PATH
[root@localhost mysql-5.7.27]# source /etc/profile
[root@localhost mysql-5.7.27]# echo $PATH
/database/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@localhost mysql-5.7.27]# chown -R mysql:mysql /database/mysql/
[root@localhost mysql-5.7.27]# chown mysql:mysql /etc/my.cnf
[root@localhost mysql-5.7.27]# cp /etc/my.cnf /etc/my.cnf.bak
[root@localhost mysql-5.7.27]# vim /etc/my.cnf 清空里面的内容,添加以下内容
[client]
port = 3306
socket = /database/mysql/tmp/mysql.sock
default-character-set = utf8
[mysqld]
port = 3306
user = mysql
basedir = /database/mysql
datadir = /database/mysql/data
pid-file = /database/mysql/mysqld.pid
socket = /database/mysql/tmp/mysql.sock
tmpdir = /database/mysql/tmp
character_set_server = utf8
server-id = 1
max_connections = 100
max_connect_errors = 10
log-bin = /database/mysql/binlog/mysql-bin
log-error = /database/mysql/logs/mysql_5_7_27.err
[root@localhost mysql-5.7.27]# cd /database/mysql/
[root@localhost mysql]# ./bin/mysqld --initialize-insecure --user=mysql --basedir=/database/mysql --datadir=/database/mysql/data
[root@localhost mysql]# cd /database/mysql
[root@localhost mysql]# ./bin/mysql_ssl_rsa_setup --initalize-insecure --user=mysql --basedir=/database/mysql --datadir=/database/mysql/data
Generating a 2048 bit RSA private key
.................................................................+++
.................................................................+++
writing new private key to 'ca-key.pem'
-----
Generating a 2048 bit RSA private key
.................................+++
..............+++
writing new private key to 'server-key.pem'
-----
Generating a 2048 bit RSA private key
.............+++
.................................................+++
writing new private key to 'client-key.pem'
-----
[root@localhost mysql]# cd /database/mysql/data/
[root@localhost data]# chmod +r server-key.pem
[root@localhost mysql]# pwd
/database/mysql
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql
[root@localhost mysql]# ll /etc/init.d/
total 52
-rw-r--r--. 1 root root 18281 Aug 19 2019 functions
-rwxr-xr-x. 1 root root 10570 Oct 16 16:31 mysql
-rwxr-xr-x. 1 root root 4569 Aug 19 2019 netconsole
-rwxr-xr-x. 1 root root 7928 Aug 19 2019 network
-rw-r--r--. 1 root root 1160 Apr 1 2020 README
[root@localhost ~]# systemctl daemon-reload
[root@localhost ~]# systemctl enable mysql
mysql.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig mysql on
[root@localhost mysql]# /etc/init.d/mysql restart
ERROR! MySQL server PID file could not be found!
Starting MySQL. SUCCESS!
[root@localhost mysql]# ps -ef | grep mysqld 查看mysql进程
[root@localhost mysql]# lsof -i:3306 查看3306端口号使用情况
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 14376 mysql 23u IPv6 28615 0t0 TCP *:mysql (LISTEN)