mysql安装一 --- 源码包安装

时间:2022-04-21 05:42:17

1.登陆http://www.mysql.com/ 或者 www.oracle.com

mysql安装一 --- 源码包安装

2.mysql安装一 --- 源码包安装

3.mysql安装一 --- 源码包安装

4.mysql安装一 --- 源码包安装

上面如果不能加载,禁用代理软件

5.mysql安装一 --- 源码包安装

6.mysql安装一 --- 源码包安装

7.mysql安装一 --- 源码包安装

8.mysql安装一 --- 源码包安装

9.上传

mysql安装一 --- 源码包安装

10.md5校验安装包的完整性

  1. [root@db2 ~]# md5sum ./mysql-5.6.26.tar.gz
  2. 733e1817c88c16fb193176e76f5b818f ./mysql-5.6.26.tar.gz

与上面的md5对照,如果一致说明安装包完整无缺

11.解压

  1. [root@db2 ~]# tar -xzvf mysql-5.6.26.tar.gz

mysql安装一 --- 源码包安装

源码目录说明:源码包目录.md

正式安装

1.安装cmake

下载地址:http://www.cmake.org/ 或者 http://yunpan.cn/cHgpTUaYRqjnc 访问密码 384d

  1. tar -xzvf cmake-3.3.1.tar.gz
  2. cd cmake-3.3.1
  3. ./configure
  4. make
  5. make install

需要安装gcc

yum install gcc

yum install gcc-c++

2.创建mysql安装目录和数据文件目录
  1. [root@db2 ~]# mkdir -p /usr/local/mysql
  2. [root@db2 ~]# mkdir -p /usr/local/mysql/data
3.创建用户和组
  1. groupadd mysql
  2. useradd -r -g mysql mysql
4.安装mysql
  1. tar -xzvf mysql-5.6.26.tar.gz
  2. [root@db2 ~]# cd mysql-5.6.26
  3. cmake . \
  4. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  5. -DMYSQL_DATADIR=/usr/local/mysql/data \
  6. -DSYSCONFDIR=/etc \
  7. -DWITH_MYISAM_STORAGE_ENGINE=1 \
  8. -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  9. -DWITH_MEMORY_STORAGE_ENGINE=1 \
  10. -DWITH_READLINE=1 \
  11. -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
  12. -DMYSQL_TCP_PORT=3306 \
  13. -DENABLED_LOCAL_INFILE=1 \
  14. -DWITH_PARTITION_STORAGE_ENGINE=1 \
  15. -DEXTRA_CHARSETS=all \
  16. -DDEFAULT_CHARSET=utf8 \
  17. -DDEFAULT_COLLATION=utf8_general_ci
  18. [root@db2 mysql-5.6.26]# make && make install

参数说明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录

-DINSTALL_DATADIR=/usr/local/mysql/data //数据库存放目录

-DDEFAULT_CHARSET=utf8     //使用utf8字符

-DDEFAULT_COLLATION=utf8_general_ci //校验字符

-DEXTRA_CHARSETS=all     //安装所有扩展字符集

-DENABLED_LOCAL_INFILE=1    //允许从本地导入数据

编译的参数可以参考http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html

** 注意事项:**

重新编译时,需要清除旧的对象文件和缓存信息。

  1. # make clean
  2. # rm -f CMakeCache.txt
  3. # rm -rf /etc/my.cnf

5.配置

  1. [root@db2 ~]# chown -R mysql:mysql /usr/local/mysql
  2. [root@db2 ~]# cp mysql-5.6.26/support-files/my-small.cnf /usr/local/mysql/my.cnf
  3. 编辑my.cnf
  4. 在mysqld标签下添加如下内容:
  5. basedir=/usr/local/mysql
  6. datadir=/usr/local/mysql/data

(1)初始化配置

进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表

  1. [root@db2 ~]# cd /usr/local/mysql/
  2. [root@db2 mysql]# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

(2)设置环境变量

  1. PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
  2. export PATH
  3. . .bash_profile

6.启动服务

(1)手动启动mysql服务

  1. [root@ rhel5~]# cd /usr/local/mysql
  2. [root@ rhel5 mysql]# ./bin/mysqld_safe --user=mysql &   //启动MySQL,但不能停止
  3. 启动日志写在此文件下:/usr/local/mysql/data/localhost.err
  4. [root@db2 bin]# ps -ef | grep mysql
  5. root 22979 58621 0 22:56 pts/1 00:00:00 /bin/sh ./bin/mysqld_safe --user=mysql
  6. mysql 23069 22979 0 22:56 pts/1 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/db2.err --pid-file=/usr/local/mysql/data/db2.pid
  7. root 23119 58621 0 22:57 pts/1 00:00:00 grep mysql
  8. 关闭MySQL服务
  9. [root@db2 mysql]# ./bin/mysqladmin -u root -p shutdown
  10. Enter password:
  11. 150917 23:03:57 mysqld_safe mysqld from pid file /usr/local/mysql/data/db2.pid ended
  12. [1]+ Done ./bin/mysqld_safe --user=mysql  
  13. //这里MySQL的root用户还没有配置密码,所以为空值。需要输入密码时,直接点回车键即可。

(2)设置自动启动mysql

  1. [root@db2 mysql]# cp support-files/mysql.server /etc/init.d/mysql
  2. [root@db2 mysql]# chkconfig mysql on
  3. [root@db2 mysql]# service mysql start
  4. Starting MySQL. [ OK ]

错误

  1. [root@db2 mysql-5.6.26]# cmake .
  2. -- Running cmake version 3.3.1
  3. -- Could NOT find Git (missing: GIT_EXECUTABLE)
  4. -- MySQL 5.6.26
  5. -- Packaging as: mysql-5.6.26-Linux-i686
  6. -- Could NOT find Threads (missing: Threads_FOUND)
  7. -- Could NOT find Threads (missing: Threads_FOUND)
  8. -- Check if the system is big endian
  9. -- Searching 16 bit integer
  10. CMake Error at /usr/local/share/cmake-3.3/Modules/TestBigEndian.cmake:51 (message):
  11. no suitable type found
  12. Call Stack (most recent call first):
  13. configure.cmake:628 (TEST_BIG_ENDIAN)
  14. CMakeLists.txt:398 (INCLUDE)
  15. -- Configuring incomplete, errors occurred!
  16. See also "/root/mysql-5.6.26/CMakeFiles/CMakeOutput.log".
  17. See also "/root/mysql-5.6.26/CMakeFiles/CMakeError.log".

解决办法:

删除目录,重新解压mysql包

  1. -- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
  2. CMake Error at cmake/readline.cmake:85 (MESSAGE):
  3. Curses library not found. Please install appropriate package,
  4. remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
  5. Call Stack (most recent call first):
  6. cmake/readline.cmake:128 (FIND_CURSES)
  7. cmake/readline.cmake:202 (MYSQL_USE_BUNDLED_EDITLINE)
  8. CMakeLists.txt:409 (MYSQL_CHECK_EDITLINE)
  9. -- Configuring incomplete, errors occurred!
  10. See also "/root/mysql-5.6.26/CMakeFiles/CMakeOutput.log".
  11. See also "/root/mysql-5.6.26/CMakeFiles/CMakeError.log".

解决:

yum install ncurses-devel

rm -rf CMakeCache.txt

重新执行

cmake .

  1. [ 50%] Building C object sql/CMakeFiles/sql.dir/__/sql-common/my_time.c.o
  2. [ 50%] Building C object sql/CMakeFiles/sql.dir/__/sql-common/my_user.c.o
  3. [ 51%] Building C object sql/CMakeFiles/sql.dir/__/sql-common/pack.c.o
  4. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/__/sql-common/client_authentication.cc.o
  5. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/event_data_objects.cc.o
  6. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/event_db_repository.cc.o
  7. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/event_parse_data.cc.o
  8. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/event_queue.cc.o
  9. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/event_scheduler.cc.o
  10. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/events.cc.o
  11. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/mysqld.cc.o
  12. [ 51%] Building CXX object sql/CMakeFiles/sql.dir/sql_client.cc.o
  13. [ 51%] Linking CXX static library libsql.a
  14. /usr/bin/ar: CMakeFiles/sql.dir/rpl_handler.cc.o: No such file or directory
  15. make[2]: *** [sql/libsql.a] Error 1
  16. make[1]: *** [sql/CMakeFiles/sql.dir/all] Error 2
  17. make: *** [all] Error 2

服务启动失败:

mysql安装一 --- 源码包安装

或者

mysql安装一 --- 源码包安装

解决:

注:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索”$basedir/my.cnf”,在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!

注意:在rhel 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。

在使用”yum update”更新系统后,需要检查下/etc目录下是否会多出一个my.cnf,如果多出,将它重命名成别的。否则,MySQL将使用这个配置文件启动,可能造成无法正常启动等问题。

  1. mv /etc/my.cnf /etc/my.cnf.bak

mysql安装一 --- 源码包安装的更多相关文章

  1. mysql 5.5源码包安装

    注:由于mysql5.5的源码包安装与mysql之前的版本安装方法不同,故写一篇随笔记录.5.5的版本不再是./configure make make install 这里用到了cmake了,cmak ...

  2. Mysql安装 ----> 基于源码包安装

    1)基于源码包安装MySQL [root@localhost ~]# rpm -q mysql mysql-server mariadb mairadb-server           //检查有没 ...

  3. Linux-软件包管理-RPM安装位置\源码包安装位置

    rpm -ql httpd 查看apache包中文件的安装位置 find /etc -name httpd 查找apache程序的启动执行httpd所在位置 cd /etc/rc.d/init.d 切 ...

  4. linux下安装mysql的三种方法:rpm包安装、yum安装、源码包安装

    1 安装MySQL数据库服务器安装方法一://查询系统自带的数据库rpm -qa | grep -i mysql //卸载查询到的所有mysqlrpm -e --nodeps mysql-libs-5 ...

  5. MySQL5.7 二进制源码包安装

    一般平时安装MySQL都是源码包安装的,但是由于它的编译需要很长的时间,所以建议安装二进制免编译包.可以到MySQL官方网站去下载,也可以到comsenz官方网站下载,还有各大镜像站下载. 下载安装包 ...

  6. Mysql_源码包安装详细过程

    一.mysql安装 1.二进制安装 2.源码包安装 3.rpm包安装 1.源码包安装 1)上传或下载源码包 [root@db02 ~]# rz mysql-5.6.46.tar.gz 2)安装依赖 由 ...

  7. nginx + mysql + php相关源码包及安装

    nginx + mysql + php安装 引言 完整的搭建一个nginx+php-fpm+mysql的服务器,一直是我向做的,不过一致没有完成过,这次工作需要,终于安装成功了 我列出了我遇到的一些问 ...

  8. 源码包安装(Python mysql redis)

    一  源码包安装 (1)python3.6源码包安装 ./configure ------> 定制功能 make make install mysql 源码包 cmake make make i ...

  9. Zabbix源码包安装

    Zabbix源码包安装 Cenos5.3 Basic server 安装顺序 Libxml2 Libmcrypt Zlib Libpng Jpeg:需要创建目录jpeg  /bin  /lib   / ...

随机推荐

  1. java中执行系统命令

    java程序中执行系统命令猛击下面的链接看看你就知道怎么用了 http://blog.csdn.net/a19881029/article/details/8063758 http://wuhongy ...

  2. IP的包头格式什么?请分析每个字段的含义

    Version:版本号 Header Length:IP包头长度 Type of service:服务类型 Total Length:IP包总长 Identifier:标识符 Flags:标记 Fra ...

  3. 字符串 - 近似回文词 --- csu 1328

    近似回文词 Problem's Link:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1328 analyse: 直接暴力枚举每一个终点,然后枚举 ...

  4. BZOJ1407_NOI2002_荒岛野人_Savage_C++

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1407 题解:http://www.cnblogs.com/hadilo/p/5951091.h ...

  5. 在Qt中怎样显示ASCII码大于127的字符

    前段时间要显示“≤”符号找了挺久没找到方法,后面发现用以下方法可以解决: ushort gd[]={8805,0};    QString gteq=QString::fromUtf16(gd); 得 ...

  6. js小知识-数组去重

    查看zepto源码时,看到它的数组去重写法非常简单.下面是代码 var uq = function(array){ return [].filter.call(array,function(item, ...

  7. 基于注解的接口限流+统一session认证

    代码心得: 一个基本的做法:对于用户身份认证做到拦截器里,针对HandlerMethod进行统一拦截认证,根据方法上的注解标识,判别是否需要身份验证,并将查找出来的User实体存入ThreadLoca ...

  8. 一致性Hash算法说明

    本文章比较好的说明了一致性Hash算法的概念 Hash算法一般分为除模求余和一致性Hash1.除模求余:当新增.删除机器时会导致大量key的移动2.一致性Hash:当新增.删除机器时只会影响到附近的k ...

  9. 学习笔记之SQL 教程

    SQL 教程 | 菜鸟教程 http://www.runoob.com/sql/sql-tutorial.html SQL,指结构化查询语言,全称是 Structured Query Language ...

  10. 绿色的银行类cms管理系统模板——后台

    链接:http://pan.baidu.com/s/1pK7Vu9X 密码:4cc5