全网最细且手把手一起学CentOS8.0源码编译安装LAMP环境之mysql8.0.17源码安装(二)

作者: 温新

分类: 【Linux】

阅读: 2598

时间: 2019-10-20 12:58:55

三、源码安装mysql8.0.16

编译安装依赖包

cd /usr/local/src
wget https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4/rpcsvc-proto-1.4.tar.gz
tar -zxvf rpcsvc-proto-1.4.tar.gz
cd rpcsvc-proto-1.4
./configure
make && make install

3.1、准备个工作

卸载系统自带的mariadb数据库

#查看是否自带数据
rpm -qa|grep mariadb   


卸载自带数据库
yum -y remove mariadb* boost-*

检查是否存在mysql用户、用户组,不存在,创建

cat /etc/group  | grep mysql
cat /etc/passwd | grep mysql

创建mysql用户组
groupadd mysql

创建mysql用户并禁止登陆
useradd -g mysql mysql -M -s /sbin/nologin/

若存在,删除my.cnf mysql

rm -rf /etc/my.cnf
rpm -qa | grep mysql

3.2、安装依赖

yum -y install cmake ncurses-devel
【注意】这里可能会报错。若是后面cmake编译报错,显示没有ncurses-devel依赖包,则使用yum单独安装它。

3.3、安装mysql8.0.17

cd /sur/local/src
tar -zxvf mysql-boost-8.0.12.tar.gz
cd mysql-boost-8.0.17
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DSYSCONFDIR=/etc \
-DWITH_EXTRA_CHARSETS=all \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/src/mysql-8.0.17/boost \
-DDOWNLOAD_BOOST=1 \
-DFORCE_INSOURCE_BUILD=1

make && make install
----------编译安装时间1-2小时~~~------

3.4、修改mysql目录权限

修改所属组与用户
chown -R mysql:mysql /usr/local/mysql
修改权限
chmod -R 755 /usr/local/mysql

3.5、初始化mysql

cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --character-set-server=utf8

3.6、安装ssl

/usr/local/mysql/bin/mysql_ssl_rsa_setup

3.7、启动mysql

/usr/local/mysql/bin/mysqld_safe --user=mysql &
【注】:用此命令开启后需要使用新的窗口连接数据库

3.8、连接mysql

第一步:连接

cd /usr/local/mysql/bin
./mysql -uroot -p
注意:不知什么原因,写完整的路径访问不到。p后面直接写上密码不可以。

第二步:修改密码

alter user 'root'@'localhost' identified by "123456";
【注】生产环境中密码千万不要随意设置成这样

3.9、设置mysql远程登陆

添加远程登陆用户
create user root@'%' identified by '123456';

为远程用户分配权限
grant all privileges on *.* to root@'%';

flush privileges;

【注】生产环境中千万不要把所有权限都分配给远程登陆用户

查看当前用户,host为 % 的用户表示远程登陆用户
select user,host from mysql.user;
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| root             | %         |

3.10、在防火墙中开启3306远程访问,这样就能通过navicat等工具连接mysql

查看是否开放3306端口
firewall-cmd --list-ports

开启防火墙
systemctl start firewalld.service 

开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
刷新
firewall-cmd --reload

关闭防火墙
systemctl stop firewalld.service 
禁止防火墙开机自启
systemctl disable firewalld.service

3.11、设置环境变量

vim /etc/profile

# 添加内容
export PATH=$PATH:/usr/local/mysql/bin

# 刷新
source /etc/profile

3.13、设置开机自启

未做,后续补上

^_^mysql8.0.17安装完成

更新时间2019年10月26日

我是夕阳何处寻,期待和优秀的你一起同行!

夕阳何处寻

2019年10月20

请登录后再评论