代码改变世界

MySQL源码安装

  abce  阅读(302)  评论(0编辑  收藏  举报

安装前系统准备

1.gcc-c++、ncurses包

# yum install gcc-c++  ncurses-devel 

2.GNU make程序包。建议安装GNU make 3.75以上版本,下载地址http://www.gnu.org/software/make/

# yum install make

3.安装cmake,用来编译mysql,MySQL 5.5以后,源码安装需要使用CMake来编译。下载地址http://www.cmake.org

# tar -xvf cmake-3.2.0-.tar.gz 
# mv cmake-3.2.0 cmake
# mv cmake /tmp/
# cd /tmp/cmake/
# ./bootstrap 
# make 
# make install
# cmake --version

4.bison程序包。下载地址 http://www.gnu.org/software/bison/

# tar -xvf bison-3.0.tar.gz 
# mv bison-3.0 bison
# mv bison /tmp
# cd /tmp/bison/
# ./cofigure
# make 
# make install
# bison --version

5.如果想运行test scripts,还需要安装perl

创建mysql用户:

# /usr/sbin/groupadd mysql
# /usr/sbin/useradd -g mysql mysql

 编译安装:

复制代码
# tar -xvf mysql-5.5.44.tar.gz 
# cd mysql-5.5.44
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DMYSQL_DATADIR=/var/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_USER=mysql \
-DSYSCONFDIR=/etc 
# make 
# make install
复制代码

cmke参数补充说明:

复制代码
#mysql安装的主目录,版本默认为/usr/local/mysql
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 

#mysql数据保存的路径,自定义 
-DMYSQL_DATADIR=/var/mysql/data

#mysql配置文件地址------The default my.cnf option file directory 
-DSYSCONFDIR=/etc 

#Compile storage engine xxx statically into server 
#Storage engines are built as plugins. You can build a plugin as a static module (compiled into the server) 
#or a dynamic module (built as a dynamic library that must be installed into the server using the INSTALL 
#PLUGIN statement or the --plugin-load option before it can be used). Some plugins might not support static 
#or dynamic building.  
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_MYISAM_STORAGE_ENGINE=1

#Unix socket file  
#The Unix socket file path on which the server listens for socket connections. This must be an absolute path 
#name. The default is /tmp/mysql.sock  
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock 

#数据库服务器TCP/IP连接的监听端口,默认为3306 
-DMYSQL_TCP_PORT=3306 

#Whether to enable LOCAL capability in the client library for LOAD DATA INFILE 
#默认为关闭,这里开启 
-DENABLED_LOCAL_INFILE=1 

#数据库编码设置 
-DEXTRA_CHARSETS=all 
-DDEFAULT_CHARSET=utf8 
-DDEFAULT_COLLATION=utf8-general_ci 
复制代码

 一些相关设置

复制代码
# mkdir -p /var/mysql/
# mkdir -p /var/mysql/data/
# mkdir -p /var/mysql/log/
# chown -R mysql:mysql /var/mysql/
# cd support-files/
# cp my-medium.cnf /etc/my.cnf

    (注意:my-large.cnf适用于1G内存左右的服务器,可以根据自己配置情况选用my-large.cnf 、my-medium.cnf或 my-huge.cnf 等不同配置)

#vi  /etc/my.cnf(编辑此文件,查找并修改以下变量内容:)

          basedir=/usr/local/mysql
          datadir=/var/mysql/data
复制代码

mysql 初始化:

# 利用mysql_install_db脚本生成新的MySQL授权表 
$ cd /usr/local/mysql/support-files 
     /usr/local/mysql/scripts/mysql_install_db \
     --defaults-file=/etc/my.cnf \
     --basedir=/usr/local/mysql \
     --datadir=/var/mysql/data \
     --user=mysql

 将mysql添加到服务,并配置开机启动:

# cp mysql.server /etc/init.d/mysqld 
# chmod +x /etc/init.d/mysqld 
# chkconfig --add mysqld 
# chkconfig --level 345 mysqld on 

启动服务:

#  service mysqld start

 

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示