首页 数据库 mysql教程 烂泥:mysql5.0数据库源码编译安装

烂泥:mysql5.0数据库源码编译安装

Jun 07, 2016 pm 02:52 PM
安装 数据库 源码 编译 首发

本文首发于 烂泥行天下 。 本次实验的mysql、OS相关信息如下: Mysql:5.0.96 OS:centos 32 bit 最近公司要上新的业务,指明数据库使用的是mysql5.0版本。如果是使用rpm包安装的话,那就很简单了。直接使用yum安装即可,命令如下: yum –y install mysql m

本文首发于烂泥行天下

本次实验的mysql、OS相关信息如下:

Mysql:5.0.96 OS:centos 32 bit

最近公司要上新的业务,指明数据库使用的是mysql5.0版本。如果是使用rpm包安装的话,那就很简单了。直接使用yum安装即可,命令如下:

yum –y install mysql mysql-server

clip_image001

clip_image002

Yum方式安装完毕后,直接启动mysql数据库服务即可。如下图:

clip_image003

这样基本上就可以了。

但是这样安装mysql数据库,没有进行定制。比如mysql数据库的数据文件存储位置。rpm形式安装的数据文件默认位置为/var/lib/mysql。这个我们可以通过mysql的配置文件查看所得,如下图:

clip_image004

实际的情况是,我们新的业务要求mysql数据库的数据文件需要单独进行存放,这个使用rpm形式就不太容易达到要求。所以打算使用源码进行编译安装,而且自己也没有对mysql数据库进行源码安装过。刚好趁这次机会学习如何对mysql数据库进行源码安装。

首先,在相应的网站下载mysql的安装包。为什么说是相应的网站,而不是mysql的官网。因为现在在官网无法下载到5.0版本的,只能下载到5.5以上的版本。我现在是在这个网站下载的:http://download.mysql.cn/src/

下载完毕上传到服务器上,具体如何上传你可以使用winscp、FTP。或者也可以使用lrzsz这个软件。

我现在使用的就是lrzsz这个软件,如果你的服务器没有安装的话,可以通过:

yum –y install lrzsz

进行安装,如下图:

clip_image005

rz 是上传的命令,sz是下载的命令。

我们现在使用日志命令把mysql的安装包,上传到服务器上,如下图:

clip_image006

clip_image007

clip_image008

Mysql安装包已经上传完毕,那么我们现在进行安装mysql之前的工作。

安装mysql编译所需要的工具包,如下图:

clip_image009 clip_image010

clip_image011

yum -y install gcc gcc-c++ ncurses-devel

工具包安装完毕后,我们来新建相关的用户。第一个用户ilanni,用来安装mysql使用。第二个用户是mysql,用来运行mysql的。如下图:

clip_image012

把mysql安装包移动到ilanni用户的家目录下,并解压,如下图:

clip_image013

clip_image014

以上工作是前提工作,做完后。我们现在进入mysql-5.0.96目录开始安装mysql。

首先编译mysql数据库,如下图:

clip_image015

./configure --prefix=/usr/local/mysql 其中/usr/local/mysql为mysql数据库的安装位置。

clip_image016

clip_image017

可以看到没有报错,那我们开始make,如下图:

clip_image018

Make过程比较慢,我这边大约10分钟左右。

clip_image019

Make终于完毕了,通过上图可以没有报错。

下面开始make install,如下图:

clip_image020

clip_image021

Make install还是比较快的,可以看到没有报错。

Mysql已经安装完毕,下面开始进行相关的配置。

还是在该安装目录下,如下图:

clip_image022

复制support-files目录下的my-medium.cnf到/etc/下作为mysql的配置文件:

cp support-files/my-medium.cnf /etc/my.cnf

clip_image023

复制support-files目录下的mysql.server到/etc/init.d/目录下作为mysql的启动文件

clip_image024

现在我们来启动下使用/etc/init.d/mysqld启动mysql 试下,如下图:

clip_image025

可以看到系统提示我们,没有执行该脚本的权限。而mysqld脚本的权限,看下图:

clip_image026

可以很明显的看到目前该脚本的权限为744,根本没有执行权限。

现在更改该脚本的权限,如下图:

clip_image027

Ok,该文件的权限修改完毕后,我们来初始化mysql数据库。在文章的开头我就说了,我现在要把mysql的数据文件存放在/data目录下。

首先要创建/data目录,并修改该目录的所属用户及用户组。如下图:

clip_image028

修改完毕后,我们还需要修改/usr/local/mysql的所属用户及用户组,如下图:

clip_image029

以上修改完毕后,我们还需要修改mysql的配置文件。主要是要在配置文件中加入目前自己定义数据文件位置,如下图:

clip_image030

以上所有的修改进行完毕后,我们在执行mysql安装目录scripts下mysql_install_db文件,如下图:

clip_image031

./scripts/mysql_install_db --user=mysql 中的--user=mysql一定要有。

我们来查看mysql初始化的结果,查看/data目录,如下图:

clip_image032

可以看到mysql的默认数据mysql及test都在里面。

现在我们来启动mysql看看实际的情况,如下图:

clip_image033

/etc/init.d/mysqld start

如果要把mysql开机启动,可以使用chkconfig命令。如下图:

clip_image034

如果你想在如何目录下直接mysql命令,需要把/usr/local/mysql/bin路径加入到全局设置/etc/profile文件中,如下图:

clip_image035

Ok,到此mysql数据库就安装完毕。

如果mysql客户端连接,mysql服务比较慢的话。我们需要在my.cnf文件中加入skip-name-resolve,如下:

wKiom1RXLsnhbFsiAACS1IQBpCE094.jpg

PS:有关本次实验使用的命令如下,在执行过程中建议尽量按照命令的顺序进行操作:

yum -y install gcc gcc-c++ ncurses-devel

tar xf mysql-5.0.22.tar.gz

useradd ilanni

useradd -s /sbin/nologin mysql

cd /home/ilanni/mysql-5.0.22

./configure --prefix=/usr/local/mysql

make

make install

cp /home/ilanni/mysql-5.0.96/support-files/my-medium.cnf /etc/my.cnf

cp /home/ilanni/mysql-5.0.96/support-files/mysql.server /etc/init.d/mysqld

chmod -R 755 /etc/init.d/mysqld

chown -R mysql:mysql /usr/local/mysql

mkdir /data

chown -R mysql:mysql /data

/usr/local/mysql/bin/mysql_install_db --basedir=/usr/local/mysql

/etc/init.d/mysqld start

echo PATH=$PATH:/usr/local/mysql/bin/ >>/etc/profile

tail -10 /etc/profile

source /etc/profile

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Go语言如何实现数据库的增删改查操作? Go语言如何实现数据库的增删改查操作? Mar 27, 2024 pm 09:39 PM

Go语言是一种高效、简洁且易于学习的编程语言,因其在并发编程和网络编程方面的优势而备受开发者青睐。在实际开发中,数据库操作是不可或缺的一部分,本文将介绍如何使用Go语言实现数据库的增删改查操作。在Go语言中,我们通常使用第三方库来操作数据库,比如常用的sql包、gorm等。这里以sql包为例介绍如何实现数据库的增删改查操作。假设我们使用的是MySQL数据库。

Win7电脑上安装Go语言的详细步骤 Win7电脑上安装Go语言的详细步骤 Mar 27, 2024 pm 02:00 PM

Win7电脑上安装Go语言的详细步骤Go(又称Golang)是一种由Google开发的开源编程语言,其简洁、高效和并发性能优秀,适合用于开发云端服务、网络应用和后端系统等领域。在Win7电脑上安装Go语言,可以让您快速入门这门语言并开始编写Go程序。下面将会详细介绍在Win7电脑上安装Go语言的步骤,并附上具体的代码示例。步骤一:下载Go语言安装包访问Go官

Hibernate 如何实现多态映射? Hibernate 如何实现多态映射? Apr 17, 2024 pm 12:09 PM

Hibernate多态映射可映射继承类到数据库,提供以下映射类型:joined-subclass:为子类创建单独表,包含父类所有列。table-per-class:为子类创建单独表,仅包含子类特有列。union-subclass:类似joined-subclass,但父类表联合所有子类列。

PHP程序必备:安装这些才能顺利运行! PHP程序必备:安装这些才能顺利运行! Mar 27, 2024 pm 05:54 PM

PHP程序必备:安装这些才能顺利运行!PHP是一种流行的服务器端脚本语言,广泛用于开发Web应用程序。要成功运行PHP程序,首先需要在服务器上安装一些必备的软件和工具。在本文中,我们将介绍必须安装的软件和工具,并附上具体的代码示例,帮助您顺利运行PHP程序。一、PHP解释器PHP程序的核心是PHP解释器,负责解析和执行PHP代码。要安装PHP解释器,可以按照

深入解析HTML如何读取数据库 深入解析HTML如何读取数据库 Apr 09, 2024 pm 12:36 PM

HTML无法直接读取数据库,但可以通过JavaScript和AJAX实现。其步骤包括建立数据库连接、发送查询、处理响应和更新页面。本文提供了利用JavaScript、AJAX和PHP来从MySQL数据库读取数据的实战示例,展示了如何在HTML页面中动态显示查询结果。该示例使用XMLHttpRequest建立数据库连接,发送查询并处理响应,从而将数据填充到页面元素中,实现了HTML读取数据库的功能。

iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片 iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片 Jul 18, 2024 am 05:48 AM

苹果公司最新发布的iOS18、iPadOS18以及macOSSequoia系统为Photos应用增添了一项重要功能,旨在帮助用户轻松恢复因各种原因丢失或损坏的照片和视频。这项新功能在Photos应用的"工具"部分引入了一个名为"已恢复"的相册,当用户设备中存在未纳入其照片库的图片或视频时,该相册将自动显示。"已恢复"相册的出现为因数据库损坏、相机应用未正确保存至照片库或第三方应用管理照片库时照片和视频丢失提供了解决方案。用户只需简单几步

在PHP中使用MySQLi建立数据库连接的详尽教程 在PHP中使用MySQLi建立数据库连接的详尽教程 Jun 04, 2024 pm 01:42 PM

如何在PHP中使用MySQLi建立数据库连接:包含MySQLi扩展(require_once)创建连接函数(functionconnect_to_db)调用连接函数($conn=connect_to_db())执行查询($result=$conn->query())关闭连接($conn->close())

PHP FFmpeg 扩展安装指南:简单易懂的教程 PHP FFmpeg 扩展安装指南:简单易懂的教程 Mar 28, 2024 pm 02:17 PM

PHPFFmpeg扩展安装指南:简单易懂的教程在网站开发的过程中,有时候我们需要处理各种多媒体文件,比如音频、视频等。而FFmpeg是一个功能强大的多媒体处理工具,它可以处理音频、视频等多种格式,并且支持各种转码、剪切等操作。PHPFFmpeg扩展则是在PHP中调用FFmpeg功能的扩展库,使用它可以很方便地处理多媒体文件。下面我们将详细介绍PHPF

See all articles