mysql源码包的编译安装,mysql安装代码

发布时间:2022-11-19

本文目录一览:

  1. 在linux安装MySQL时采用源码编译安装,但是如何让MySQL的编译时间缩短呢?
  2. 安装mysql5.6编译安装需要哪些包
  3. 编译环境cmake+gcc怎么编译mysql源码
  4. mysql编译安装
  5. cmake怎样编译安装mysql

在linux安装MySQL时采用源码编译安装,但是如何让MySQL的编译时间缩短呢?

可以试试在使用 make make install 时添加 -j 参数,不限制内核进行编译安装。或者 -j 后加内核数。例如:

make -j 4 make install -j 4

优点:速度快会相对提高很多
缺点:消耗大量CPU,内存资源。 我做过一个测试,如果不限定内核(16核 80GB内存)的服务器编译安装 MySQL 5.0.7,安装时长大致在10分钟左右,但是测试时服务器CPU跑满100%,内存消耗至少32GB。直接使用 make make install 安装耗时45分钟,内存4GB,CPU 10%左右。

安装mysql5.6编译安装需要哪些包

安装 MySQL 5.6.13 下载的 zip 包有 212MB,请耐心等待。

  1. mysql-5.6.13-winx64.zip 解压到 D:/mysql-5.6.13/ 目录。
  2. 清理里面的调试文件 打开这个目录,发现里面的文件夹和文件跟一个安装好后的 MySQL 基本没有区别。可能你会很郁闷,这个 MySQL5.6.13 居然有 1.04GB,呵呵,仔细一看你就会发现,里面有很有调试文件。后缀为 .lib.pdb 的,其实可以删除掉。还有一些名为 debug 的目录,也删除掉吧。这样是不是就小很多了。
  3. 创建 my.ini 作为 MySQL 的配置文件 默认情况下没有 my.ini 文件,这需要我们手工创建一个。怎么创建呢?有没有像 php.ini 那样有模板呢?其实在 MySQL5.6.13 中带了一个 my-default.ini,可以算作模板,只是里面的内容实在太少了。于是洪哥带大家手工创建一个 my.ini。 直接创建一个文本文件,命名为 my.ini。 打开它,输入如下内容:

编译环境cmake+gcc怎么编译mysql源码

方法/步骤

  1. 在安装 MySQL 数据库服务器前,确保你的 Linux 系统是可以连接网络的。下面我们将通过源码方式来安装 MySQL。首先通过 putty 登入进你的 Linux 系统,确保系统中已经安装了 gcc、c++ 等编译环境。因为 MySQL 从 5.5 版本开始是使用 cmake 编译的,如果三个环境都没安装,可以使用下面的命令进行安装:
    yum -y install make gcc-c++ cmake bison-devel ncurses-devel
    
  2. 查找系统里是否已经安装了 MySQL 数据库的相关组件,使用命令:
    rpm -qa | grep mysql
    
    如果查找到,可以使用下面命令进行强制卸载:
    rpm -e --nodeps 包名
    
    如果你在安装 Linux 系统时,使用的默认的安装选项,这一步可以跳过。

mysql编译安装

使用 binary 进行安装,文件名 mysql-standard-5.0.18-linux-i686-glibc23.tar.gz

  1. 将上述文件解压到某处,并将 MySQL 所有目录名改为 mysql,结果应如 /home/xxx/mysql
  2. 根据 mysql 目录下的 INSTALL-BINARY 文件来进行安装
    groupadd mysql
    useradd -g mysql mysql
    cd /usr/local
    ln -s /home/xxx/mysql mysql
    cd mysql
    scripts/mysql_install_db --user=mysql
    chown -R root .
    chown -R mysql data
    chgrp -R mysql .
    bin/mysqld_safe --user=mysql
    
  3. 进入 MySQL 应用环境 进入 mysql 目录下的 bin 目录,运行命令:
    ./mysql -u root -p
    
    此时将出现 password:(要求输入密码),但默认情况下 root 用户没有密码,所以回车即可。此时将进入 MySQL 界面。
  4. 简单使用 MySQL 在 MySQL 环境中运行命令:
    show databases;
    use test;
    
    注意:如果在运行 ./mysql -u root -p 之后,报错:
    Can't connect to local MySQL server through socket '/tem/mysql.sock'
    
    那么可能有以下几种情况:
    1. mysql.sock 并不在 /tmp 目录下,而是在其它某个目录下(如 /var/lib/mysql)。这时只需要将这个 mysql.sock 做链接到 /tmp 目录下,运行命令:
      ln -s MYSQL.SOCK_PATH /tmp/mysql.sock
      
    2. 在同学的笔记本的 Linux 中,会在 /tmp 下生成 mysql.sock,但重新启动 Linux 后,该文件被删除。这时也可以用情况2中的解决方法,或者每次都运行命令:
      ./mysqld_safe --user=mysql
      

cmake怎样编译安装mysql

不同 Linux 版本,安装不同版本的 MySQL 方法各不相同。下面以 CentOS 6.5 编译安装 MySQL 5.6.16 为例介绍:

一. 准备工作

  1. yum 安装各个依赖包:
    yum -y install gcc gcc-devel gcc-c++ gcc-c++-devel autoconf* automake* zlib* libxml* ncurses-devel ncurses libgcrypt* libtool* cmake openssl openssl-devel bison bison-devel unzip
    
  2. 新建 mysql 组和用户:
    groupadd mysql
    useradd -g mysql -s /sbin/nologin mysql
    
  3. 目录准备:
    mkdir -p /webserver/mysql/etc
    mkdir -p /webserver/mysql/data
    mkdir -p /webserver/mysql/tmp
    chown -R mysql.mysql /webserver/mysql
    
  4. 解压 MySQL 并进入安装目录:
    tar zxvf mysql-5.6.16.tar.gz
    cd mysql-5.6.16
    

二. 编译并安装

  1. 编译 MySQL:
    cmake -DCMAKE_INSTALL_PREFIX=/webserver/mysql \
          -DSYSCONFDIR=/webserver/mysql/etc \
          -DMYSQL_DATADIR=/webserver/mysql/data \
          -DMYSQL_TCP_PORT=3306 \
          -DMYSQL_UNIX_ADDR=/webserver/mysql/tmp/mysqld.sock \
          -DMYSQL_USER=mysql \
          -DEXTRA_CHARSETS=all \
          -DWITH_READLINE=1 \
          -DWITH_SSL=system \
          -DWITH_EMBEDDED_SERVER=1 \
          -DENABLED_LOCAL_INFILE=1 \
          -DWITH_INNOBASE_STORAGE_ENGINE=1 \
          -DENABLE_DOWNLOADS=1
    
  2. 如果出现以下错误...(略)