mysql编译安装(详细)(转载)

mysql编译安装(详细)

一、编译安装MySQL前的准备工作

安装编译源码所需的工具和库

  1. yum install gcc gcc-c++ ncurses-devel perl

安装cmake,从http://www.cmake.org下载源码并编译安装

  1. wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
  2. tar -xzvf cmake-2.8.10.2.tar.gz
  3. cd cmake-2.8.10.2
  4. ./bootstrap ; make ; make install
  5. cd ~

二、设置MySQL用户和组

新增mysql用户组

  1. groupadd mysql

新增mysql用户

  1. useradd -r -g mysql mysql

三、新建MySQL所需要的目录

新建mysql安装目录

  1. mkdir -p /usr/local/mysql

新建mysql数据库数据文件目录

  1. mkdir -p /data/mysqldb

四、下载MySQL源码包并解压

从http://dev.mysql.com/downloads/mysql/直接下载源码,解压mysql-5.6.16.tar.gz

  1. wget http://dev.mysql.com/downloads/mysql/mysql-5.6.16.tar.gz
  2. tar -zxv -f mysql-5.6.16.tar.gz
  3. cd mysql-5.6.16

五、编译安装MySQL

从mysql5.5起,mysql源码安装开始使用cmake了,设置源码编译配置脚本。

设置编译参数

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DMYSQL_DATADIR=/usr/local/mysql/data

-DSYSCONFDIR=/etc

-DWITH_MYISAM_STORAGE_ENGINE=1

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_MEMORY_STORAGE_ENGINE=1

-DWITH_READLINE=1

-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock

-DMYSQL_TCP_PORT=3306

-DENABLED_LOCAL_INFILE=1

-DWITH_PARTITION_STORAGE_ENGINE=1

-DEXTRA_CHARSETS=all

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

-DCMAKE_INSTALL_PREFIX=dir_name 设置mysql安装目录
-DMYSQL_UNIX_ADDR=file_name 设置监听套接字路径,这必须是一个绝对路径名。默认为/tmp/mysql.sock
-DDEFAULT_CHARSET=charset_name 设置服务器的字符集。
缺省情况下,MySQL使用latin1的(CP1252西欧)字符集。cmake/character_sets.cmake文件包含允许的字符集名称列表。
-DDEFAULT_COLLATION=collation_name 设置服务器的排序规则。
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
存储引擎选项:

MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。

静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1

可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)

-DMYSQL_DATADIR=dir_name 设置mysql数据库文件目录
-DMYSQL_TCP_PORT=port_num 设置mysql服务器监听端口,默认为3306
-DENABLE_DOWNLOADS=bool 是否要下载可选的文件。例如,启用此选项(设置为1),cmake将下载谷歌所使用的测试套件运行单元测试。

注:重新运行配置,需要删除CMakeCache.txt文件

  1. rm CMakeCache.txt

编译源码

  1. make

安装

  1. make install

六、修改mysql目录所有者和组

修改mysql安装目录

  1. cd /usr/local/mysql
  2. chown -R mysql:mysql .

修改mysql数据库文件目录

  1. cd /data/mysqldb
  2. chown -R mysql:mysql .

七、初始化mysql数据库

  1. cd /usr/local/mysql
  2. scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb

八、复制mysql服务启动配置文件

  1. cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

注:如果/etc/my.cnf文件存在,则覆盖。

九、复制mysql服务启动脚本及加入PATH路径

  1. cp support-files/mysql.server /etc/init.d/mysqld
  2. vim /etc/profile
  3. PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
  4. export PATH
  5. source /etc/profile

十、启动mysql服务并加入开机自启动(可选这个步骤,以后可以自己启动的)

service mysqld start 
chkconfig --level 35 mysqld on

十一、检查mysql服务是否启动

  1. netstat -tulnp | grep 3306
  2. mysql -u root -p

密码为空,如果能登陆上,则安装成功。

十二、修改MySQL用户root的密码

  1. mysqladmin -u root password ‘123456‘

注:也可运行安全设置脚本,修改MySQL用户root的密码,同时可禁止root远程连接,移除test数据库和匿名用户。

  1. /usr/local/mysql/bin/mysql_secure_installation

十三、可能会出现的错误

  1. 问题:
  2. Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/Server03.mylinux.com.pid).
  3. 解决:
  4. 修改/etc/my.cnf 中datadir,指向正确的mysql数据库文件目录
  1. 问题:
  2. ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2)
  3. 解决:
  4. 新建一个链接或在mysql中加入-S参数,直接指出mysql.sock位置。
  5. ln -s /usr/local/mysql/data/mysql.sock /tmp/mysql.sock
  6. /usr/local/mysql/bin/mysql -u root -S /usr/local/mysql/data/mysql.sock
    1. MySQL问题解决:-bash:mysql:command not found
    2. 因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,
    3. 系统在/usr/bin下面查此命令,所以找不到了
    4. 解决办法是:
    5. ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可
时间: 2024-12-25 06:40:23

mysql编译安装(详细)(转载)的相关文章

Linux(centos)下mysql编译安装教程

Linux下mysql编译安装教程 #查看linux发行版本号 cat /etc/issue #查看linux内核版本 uname -r 本文测试环境centOS6.6 一.Linux下编译安装MySQL前的准备工作 在线安装编译源码所需的工具和库(无法联网的话要事先准备软件,或者系统盘) yum install gcc gcc-c++ ncurses-devel perl 从mysql5.5起源代码编译需要借助cmake这款编译工具.从http://www.cmake.org下载cmake源码

VS2010 Boost编译安装(转载)

把项目从VS2008搬到VS2010的时候,导入原来的编译好的boost库居然连接失败, 提示:LINK : fatal error LNK1104: 无法打开文件“libboost_system-vc100-mt-1_47.lib”  错误 网上找答案,才知道不同的编译器所使用的boost库编译命令是不同的: 输入bjam --toolset=msvc-10.0 --build-type=complete stage 开始编译(VS2010的) (如果是VS2005, 则为msvc-8.0:如

hadoop2.1.0编译安装教程(转载)

由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO util.NativeCodeLoader - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable的错误,但在实际测试中是可以正常安装并可以运行自带的w

关系型数据库之Mysql编译安装及数据库基础(一)

一.为什么会有数据库呢? 刚开始接触数据库的朋友们,都会问数据库用来干啥的呢?字面表达的意思就是用来存储数据的仓库简称"数据库",在日常生活中我们与数据库相关的事务都是一大把一大把的,例如: 1.我们去做火车的时候需要实名认证,为什么安检人员可以通过我们的身份证就可以查询我们的个人信息呢,因为们都是有户口的群众,在公安居民信息库都录入着我们的信息,而们的信息也是存储在国家公民的信息库里面的,这也是我们所说的数据库,早期最传统的数据库就是文本文件,没当查询数据时都需要从头到尾把整个文件都

mysql 5.6.41编译安装详细步骤

转自:https://www.cnblogs.com/netsa/p/7088494.html 简略步骤: mysql5.6.41编译安装步骤: 下载mysql准备用户和组yum安装依赖解压mysqlcmake编译mysqlmake && make install ----时间约10分钟mysql安装目录权限设置数据库初始化拷贝配置文件root密码重置,原来是没密码的远程账户授权设置服务启动和开机启动 ======实战============================== 1 #安装

mysql编译安装完成后,启动时报错The server quit without updating PID file

源码包下载: 编译安装: 设置配置文件: 添加启动脚本: 添加开机启动项: 完成后,/etc/init.d/mysqld start 时候报错如下: Starting MySQL..The server quit without updating PID file ( [FAILED] al/mysql/data/FrankTest01.pid). 1.防火墙SELINUX有没有关闭 2.3306端口有没有被占用   netstat -tulanp 3.是否有其他相关的mysqld进程在运行.

Mysql编译安装

创建mysql用户,组: # groupadd mysql # useradd mysql -M -s /sbin/nologin 开始进行编译安装: # cd mysql-5.6.28 # ./configure \ --prefix=/application/mysql5.6.28 \  #指定路径 --with-unix-socket-path=/application/mysql5.6.28/tmp/mysql.sock \   #指定sock的路径 localstatedir=/app

MySQL编译安装错误:No curses/termcap library found的解决方法

CentOS编译安装MySQL,./coonfigure时出现错误: checking for termcap functions library... configure: error: No curses/termcap library found 解决方法:安装 1.下载网址:ftp://invisible-island.net/ncurses/ # tar -zvxf ncurses-5.7.tar.gz # ./configure # make # make install 2.安装了

上课笔记第二十九天、mysql、mysql编译安装及组成、客户端、变量和类型

1.关系型数据库基础理论及MySQL数据库基础架构           关系型数据的基础理论                    文件系统上:最初所有的数据都存储于文件中,每次读取文件时需要把所有的块数据都加载到内存中,通过工具grep查询需要的数据,如果文件比较大(100万行),这时加载会很慢而且占用资源比较大. 数据管理软件:                             层次模型.网状模型.关系模型.对象-关系模型.非关系模型                     DBMS: