LAMP架构之4——MySQL源码编译及使用

LAMP架构之4——MySQL源码编译及使用,第1张

LAMP架构之4——MySQL源码编译及使用

目录

一、MYSQL源码编译

1、Mysql的下载

2、MySQL的编译/安装

3、配置MySQL

4、数据库的首次使用

本章总结:


一、MYSQL源码编译 1、Mysql的下载

MySQL官网:
MySQL :: Download MySQL Community Server (Archived Versions)https://downloads.mysql.com/archives/community/

 2、MySQL的编译/安装

(1)获取编译包,并解压

(2)安装编译器

MySQL用到的编译器是。同时需要两个编译包。

 (3)cmake

以下为源码编译的官网文档,此页面中有cmake的各项参数的详细介绍。

第一步: 添加好参数后,cmake校验依赖性

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock -DWITH_INNObase_STORAGE_ENGINE=1 -DSYSConFDIR=/etc -DWITH_EXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=/mnt/mysql-5.7.31/boost/boost_1_59_0

这里尤其注意最后一项的路径。

 发现警告,可以不用处理,只有发生错误时一定需要处理。

 注意:cmake检查依赖性时,会将之前的报错信息存在下图标出的缓存文件中,所以第二次校验时要比第一次快得多。如果有更改或者警告修复后,一定要可以把这个缓存文件删除,cmake就会从头开始重新校验依赖。

第二步:make

make后它会开始编译,编译速度取决于电脑配置。比较慢,要等很久。 

编译花费大概40分钟,编译完成后,查看电脑闲置内存由之前的15G变为9.6G。

第三步:make install

安装到了目录下 

3、配置MySQL

(1)创建mysql用户和组

(2)创建mysql的执行命令脚本

(3)创建数据目录并设置权限

这里将这个数据目录的所有人和所有组都设置为mysql,并将其权限设置为750(这里是755,不影响)

(4)更改/etc下mysql的配置文件

这个的文件中主要更改对应的mysql数据目录的路径。和编译时保持一致。

(5)在系统的环境变量中添加mysql的bin路径,并命令使其立即生效。

(6)mysql初始化,使用用户“mysql”的用户属性来初始化

mysqld --initialize --user=mysql

 初始化完成后,会生成一个临时密码(结尾显示的就是)

(7)启动mysql数据库

(8)登录mysql

mysql -p

第一次登录mysql时需要输入初始化密码,上一步中生成的就是。但是这个临时密码登录后什么都干不了。

(9)更改mysql的初始化密码

mysql_secure_installation

 初始化密码时,需要先输入默认的临时密码,然后再输入自己的密码。按照每一步骤, *** 作者自己选择yes或no

(10)重新登录mysql数据库

注意:如果使用明文密码登录的话,这里会有警告;所以一般都不在<-p>参数后加明文密码

4、数据库的首次使用

在nginx的发布目录下创建phpMyadmin的测试文件,并创建一个软连接。

测试的准备工作:

首先开启server1的php,否则上述的suoyouphp文件都将无法访问

 然后再更改nginx的配置,使其支持php网页。更改完成后重新载入nginx设置。

测试:

浏览器访问<172.25.254.1/myadmin>,访问数据库的网页管理界面。

登录mysql数据库:

直接访问时报错,说是连接不到指定的文件/目录。这是因为server1的php服务中还无法读取mysql的数据目录。

 故障排查:在php的配置中添加mysql的数据目录。

更改中以下两个位置,添加上mysql的数据库目录。更改完成后重新载入php的服务配置

重新测试:

登录后,进入到mysql数据库的管理页面。

本章总结:

 1、MySQL官方文档

MySQL :: MySQL 5.7 Reference Manual :: 2.9 Installing MySQL from Sourcehttps://dev.mysql.com/doc/refman/5.7/en/source-installation.html2、mysql参数帮助:

3、mysql服务器的主从ID必须不同,ID为0时表示不允许任何主机复制。

4、mysql数据库刷新命令

flush privileges;            #刷新数据库

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5709462.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存