mysql 5.5的libmysql_MySQL 5.5 编译详解

本文档详细介绍了在CentOS 5.7环境下,如何为MySQL 5.5.21编译libmysql。包括添加用户、创建目录、安装依赖、下载源码、使用cmake编译以及配置my.cnf文件等步骤,以帮助用户成功完成MySQL的编译和安装。
摘要由CSDN通过智能技术生成

说明:蓝色=命令名称

浅绿=命令参数

浅蓝=选项

紫色=目录

系统环境:CentOS  5.7 x86_64

一、安装简介

用户名::/usr/local/mysql-5.5.20数据库目录:/data/mysql/data源码包:mysql-5.5.21.tar.gz

二、安装准备

添加用户

useradd -s/sbin/nologin mysql

建立所需目录

mkdir-p/data/mysql/datachown -R mysql:mysql/data/mysql

安装编译所需文件或程序

yuminstallgcc gcc-c++ cmake  ncurses-devel bison

下载源码包

wgethttp://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.21.tar.gz/from/http://mirror.services.wisc.edu/mysql/  -P/usr/local/src

三、编译安装

cd/usr/local/srctarxvf mysql-5.5.21.tar.gzcdmysql-5.5.21

CFLAGS="-O3" CXX=gccCXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"cmake-DMYSQL_USER=mysql \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.21 \

-DMYSQL_DATADIR=/data/mysql/data \

-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \

-DEXTRA_CHARSETS=all \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_EMBEDDED_SERVER=1  \

-DWITH_DEBUG=0注:详细参数见下文补充内容。

make-j2 && make install注:-j 用来指定CPU核心数,可加快编译速度,不加也可以。

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

mv/usr/local/src/mysql-5.5.21/support-files/my-large.cnf /etc/my.cnf注:在/usr/local/src/mysql-5.5.21/support-files/文件夹中有多个my-****.cnf 配置文件,具体用那一个配置文件根据自己实际情况。可以通过查看配置文件的头部信息来了解配置问价适合的配置。例如[root@localhost support-files]# head /usr/local/src/mysql-5.5.21/support-files/my-huge.cnf

# Example MySQL config file for very large systems.

#

# This is for a large system with memory of 1G-2G where the system runs mainly

# MySQL.

mv/usr/local/src/mysql-5.5.21/support-files/mysql.server /etc/init.d/mysqldchmod+x/etc/init.d/mysqldchkconfig--level 345mysqldon

/usr/local/mysql-5.5.21/scripts/mysql_install_db--user=mysql \

--defaults-file=/etc/my.cnf \

--basedir=/usr/local/mysql-5.5.21/ \

--datadir=/data/mysql/data/

echo"export PATH=/usr/local/mysql-5.5.21/bin:$PATH">>/etc/profilesource/etc/profile

补充:

从mysql5.5起,mysql源码安装开始使用cmake。下面是 mysql 5.5 与以前的参数对照:configure Command

CMake Command

./configure

cmake .

./configure --help

cmake . -LH or ccmake .

Parameter

configure Option

CMake Option

CMake Notes

Installation base directory

--prefix=/usr

-DCMAKE_INSTALL_PREFIX=/usr

mysqld directory

--libexecdir=/usr/sbin

-DINSTALL_SBINDIR=sbin

interpreted relative to prefix

Data directory

--localstatedir=/var/lib/mysql

-DMYSQL_DATADIR=/var/lib/mysql

Config directory (for my.cnf)

--sysconfdir=/etc/mysql

-DSYSCONFDIR=/etc/mysql

Plugin directory

--with-plugindir=/usr/lib64/mysql/plugin

-DINSTALL_PLUGINDIR=lib64/mysql/plugin

interpreted relative to prefix

Man page directory

--mandir=/usr/share/man

-DINSTALL_MANDIR=share/man

interpreted relative to prefix

Shared-data directory

--sharedstatedir=/usr/share/mysql

-DINSTALL_SHAREDIR=share

this is where aclocal/mysql.m4 should be installed

Library installation directory

--libdir=/usr/lib64/mysql

-DINSTALL_LIBDIR=lib64/mysql

interpreted relative to prefix

Header installation directory

--includedir=/usr/include/mysql

-DINSTALL_INCLUDEDIR=include/mysql

interpreted relative to prefix

Info doc directory

--infodir=/usr/share/info

-DINSTALL_INFODIR=share/info

interpreted relative to prefix

Parameter

configure Option

CMake Option

CMake Notes

readline library

--with-readline

-DWITH_READLINE=1

SSL library

--with-ssl=/usr

-DWITH_SSL=system

zlib library

--with-zlib-dir=/usr

-DWITH_ZLIB=system

libwrap library

--without-libwrap

-DWITH_LIBWRAP=0

Parameter

configure Option

CMake Option

CMake Notes

TCP/IP port number

--with-tcp-port-=3306

-DMYSQL_TCP_PORT=3306

UNIX socket file

--with-unix-socket-path=/tmp/mysqld.sock

-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock

Enable LOCAL for LOAD DATA

--enable-local-infile

-DENABLED_LOCAL_INFILE=1

Extra charsets

--with-extra-charsets=all

-DEXTRA_CHARSETS=all

default is "all"

Default charset

--with-charset=utf8

-DDEFAULT_CHARSET=utf8

Default collation

--with-collation=utf8_general_ci

-DDEFAULT_COLLATION=utf8_general_ci

Build the server

--with-server

none

Build the embedded server

--with-embedded-server

-DWITH_EMBEDDED_SERVER=1

libmysqld privilege control

--with-embedded-privilege-control

none

always enabled?

Install the documentation

--without-docs

none

Big tables

--with-big-tables, --without-big-tables

none

tables are big by default

mysqld user

--with-mysqld-user=mysql

-DMYSQL_USER=mysql

mysql is the default

Debugging

--without-debug

-DWITH_DEBUG=0

default is debugging disabled

GIS support

--with-geometry

none

always enabled?

Community features

--enable-community-features

none

always enabled

Profiling

--disable-profiling

-DENABLE_PROFILING=0

enabled by default

pstack

--without-pstack

none

pstack is removed

Assembler string functions

--enable-assembler

none

Build type

--build=x86_64-pc-linux-gnu

no equivalent

unneeded?

Cross-compile host

--host=x86_64-pc-linux-gnu

no equivalent

unneeded?

Client flag

--with-client-ldflags=-lstdc++

none

unneeded

Client flag

--enable-thread-safe-client

none

unneeded, clients are always thread safe

Comment

--with-comment='string'

-DWITH_COMMENT='string'

Shared/static binaries

--enable-shared --enable-static

none

there is only DISABLE_SHARED

Memory use

--with-low-memory

none

unneeded0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
libmysql_e.dll 126错误是指在使用MySQL数据库时,系统无法找到或加载libmysql_e.dll文件。这可能是由以下原因引起的: 1. 文件丢失或损坏:该错误可能是由于libmysql_e.dll文件丢失、被删除或损坏导致的。这可能发生在安装或卸载MySQL客户端或服务器时,文件被错误地删除或替换。 2. 不兼容的版本:libmysql_e.dll文件可能与您正在使用的MySQL版本不兼容。这可能是由于您使用的MySQL版本过新或过旧所引起的。建议您使用与您的MySQL版本相对应的libmysql_e.dll文件。 3. 文件路径错误:如果libmysql_e.dll文件位于错误的文件夹或目录中,系统无法正确加载它。请确保libmysql_e.dll文件位于正确的位置。 解决libmysql_e.dll 126错误的方法如下: 1. 恢复文件:如果libmysql_e.dll文件被删除或损坏,您可以尝试将其从回收站中恢复(如果它在回收站中),或从其他可靠来源重新下载该文件。 2. 安装适当版本:确保您下载和安装与您的MySQL版本相对应的libmysql_e.dll文件。这将确保文件与MySQL时完全兼容,并避免出现兼容性问题。 3. 检查文件路径:检查libmysql_e.dll文件是否位于正确的文件夹或目录中。如果不是,请将其移动到正确的位置。 4. 重新安装MySQL:如果以上方法都无效,您可以尝试重新安装MySQL客户端或服务器。这将确保库文件被正确地安装并加载。 总结:libmysql_e.dll 126错误是由于无法找到或加载libmysql_e.dll文件而引起的。您可以尝试恢复文件、安装适当版本、检查文件路径或重新安装MySQL来解决此问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值