MySQL

一、下载源码和安装编译工具

https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.32.tar.gz
[root@centos opt]# yum -y install ncurses ncurses-devel bison cmake make gcc gcc-c++

二、建立数据库启动用户

[root@centos opt]# useradd -M -s /sbin/nologin mysql

三、解压源码

[root@centos opt]# tar -xvf mysql-boost-5.7.32.tar.gz && cd mysql-5.7.32

四、编译安装

检测:

[root@centos mysql-5.7.31]# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \            //定义安装目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \      //连接数据库socket路径
-DSYSCONFDIR=/etc \                      //指定初始化参数文件目录(my.cnf)
-DSYSTEMD_PID_DIR=/usr/local/mysql \     //mysql的PID文件的目录
-DDEFAULT_CHARSET=utf8 \                 //指定默认使用的字符集编码
-DDEFAULT_COLLATION=utf8_general_ci \    //指定默认使用的字符集校对规则,utf8_general_ci是适用于UTF-8字符集的通用规则
-DWITH_INNOBASE_STORAGE_ENGINE=1 \       //支持InnoDB引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \        //将存储引擎xxx静态编译到服务器中
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1                         //启用安装systemd支持文件  

编译参数可查看官网说明:https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html

(注意:如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的
CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧)

编译&&安装:

[root@centos mysql-5.7.31]# make -j 4 && make install -j 4

不指定的话默认就用一个核编译,速度太慢,-j指定4核一起编译

对mysql目录进行权限设置

[root@centos mysql-5.7.31]# chown -R mysql.mysql /usr/local/mysql/

六、编辑mysql主配置文件

[root@centos mysql-5.7.31]# vim /etc/my.cnf
(里面内容全部删除,替换成以下内容)
[client]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysql]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
server-id = 1

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

[root@centos mysql-5.7.31]# chown mysql:mysql /etc/my.cnf

七、设置环境变量

[root@centos ~]# echo "PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH" >> /etc/profile

把这两个路径添加到环境变量中,并放到profile文件中使之开机自运行,否则不生效

[root@centos ~]# echo "export PATH" >> /etc/profile

设为全局变量,使它使用环境更广

[root@centos ~]# source /etc/profile

使变量立即生效

八、初始化数据库

[root@centos ~]# cd /usr/local/mysql/bin
[root@centos ~]# ./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data

若是初始化失败,将mysql目录下的data目录删除重新初始化

添加系统服务

[root@centos mysql]# cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
[root@centos mysql]# systemctl daemon-reload

九、启动mysql查看状态

[root@centos ~]# systemctl start mysqld
[root@centos ~]# systemctl enable mysqld
[root@centos ~]# netstat -tulnp | grep 3306

十、进入数据库

[root@centos bin]# mysqladmin -uroot -p password "abc123"

设置root初始密码,原始没有密码,直接回车就行

[root@centos bin]# mysql -uroot -p //回车输入密码进入mysql

能进入数据库说明配置成功,输入“\q”退出

posted @ 2021-08-28 15:43  Cai_HL  阅读(44)  评论(0编辑  收藏  举报
>