zoukankan      html  css  js  c++  java
  • cmake安装MySQL

    发现一个网址整理的挺好,请各位参考:

    http://www.chenyudong.com/archives/building-mysql-5-6-from-source.html#i

    也可以参考我的另一篇文章,整合到lamp中了:http://www.cnblogs.com/chinas/p/4572281.html

    1、编辑脚本cmake_mysql_install.sh,输入以下内容:

    #!/bin/bash
    
    #下载并安装make
    yum -y install gcc   #排除错误:configure: error: in `/usr/local/src/make-4.1':   configure: error: no acceptable C compiler found in $PATH
    cd /usr/local/src/
    wget http://ftp.gnu.org/gnu/make/make-4.1.tar.gz
    tar zxvf make-4.1.tar.gz
    cd make-4.1
    ./configure
    make && make install
    
    #下载并安装bison
    cd /usr/local/src/          
    wget http://alpha.gnu.org/gnu/bison/bison-2.7.91.tar.gz 
    tar zxvf bison-2.7.91.tar.gz
    cd bison-2.7.91
    ./configure
    make && make install
    
    #安装gcc-c++
    yum -y install gcc-c++
    #for ubuntu:
    #apt-get install g++
    
    #下载并解压camke
    cd /usr/local/src/
    wget http://www.cmake.org/files/v3.2/cmake-3.2.2.tar.gz
    tar zxvf cmake-3.2.2.tar.gz
    cd cmake-3.2.2
    ./bootstrap
    gmake && gmake install
    #or 
    #make && make install
    
    #下载安装ncurses
    cd /usr/local/src/
    wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz
    tar -zxvf ncurses-5.9.tar.gz
    cd ncurses-5.9
    ./configure
    make && make install
    
    #安装mysql
    #首先,创建mysql用户、组
    groupadd mysql
    useradd -g mysql mysql -s /usr/sbin/nologin
    mkdir /usr/local/mysql        # 创建目录
    mkdir /usr/local/mysql/data   # 数据仓库目录
    cd /usr/local/src/ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.24.tar.gz 
    #解压安装
    tar zxvf mysql-5.6.24.tar.gz
    cd mysql-5.6.24
    cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql              #安装路径
    make && make install 
    
    cd /usr/local/mysql
    scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql   #初始化mysql数据库 
    # cp support-files/my-medium.cnf /usr/local/mysql/my.cnf                                             #copy配置文件
    cp support-files/my-default.cnf /usr/local/mysql/my.cnf 
    chown -R mysql:mysql /usr/local/mysql                                                              #更改权限
    View Code

    安装MySQL可选项:

    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
    -DMYSQL_DATADIR=/usr/local/mysql/data 
    -DSYSCONFDIR=/etc                     #my.cnf路径
    -DWITH_MYISAM_STORAGE_ENGINE=1        #支持MyIASM引擎
    -DWITH_INNOBASE_STORAGE_ENGINE=1      #支持InnoDB引擎
    -DWITH_MEMORY_STORAGE_ENGINE=1        #支持Memory引擎
    -DWITH_READLINE=1                     #快捷键功能(我没用过)
    -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock    #连接数据库socket路径
    -DMYSQL_TCP_PORT=3306                #端口
    -DENABLED_LOCAL_INFILE=1             #允许从本地导入数据
    -DWITH_PARTITION_STORAGE_ENGINE=1    #安装支持数据库分区
    -DEXTRA_CHARSETS=all                 #安装所有的字符集
    -DDEFAULT_CHARSET=utf8               #默认字符
    -DDEFAULT_COLLATION=utf8_general_ci

     2、# nano /usr/local/mysql/my.cnf ,添加以下内容(或者换成vim工具):

    [mysqld]
    basedir = /usr/local/mysql
    datadir = /usr/local/mysql/data
    log-error = /usr/local/mysql/mysql_error.log
    pid-file = /usr/local/mysql/mysql.pid
    user = mysql
    tmpdir = /tmp
    View Code

    注意:对于nano,要保存所做的修改,按下Ctrl+O;退出,按下Ctrl+X。若退出前没有保存所做的修改,它会提示你是否要保存。如果不要,请按N,反之,则按Y。然后它会让你确认要保存的文件名,确认或修改后按Enter即可。

    如果你没有修改好而不小心按了保存键,您可以在请求确认文件名时按Ctrl+C来取消。

    3、启动MySQL:en

    # cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
    # /etc/init.d/mysqld start

     4、进入MySQL命令行;

    $ mysql
    bash: mysql: command not found
    $ which mysql /usr/bin/which: no mysql in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/lot/bin:/usr/local/python27/bin:/home/lot/bin) [lot@bogon ~]$ whereis mysql mysql: /usr/lib64/mysql /usr/local/mysql /usr/share/mysql # ln -s /usr/local/mysql/bin/mysql /usr/bin

      # mysql
      ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

    # ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
    # service mysqld restart

    5、好了,

    [root@bogon bin]# service mysqld restart
     ERROR! MySQL server PID file could not be found!
    Starting MySQL... SUCCESS! 
    [root@bogon bin]# mysql
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 1
    Server version: 5.6.24 Source distribution
    
    Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | test               |
    +--------------------+
    4 rows in set (0.04 sec)
    View Code

    6、遇到的一些错误整理:

    6-1、安装 bison:

    checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH.
    GNU M4 1.4.6 or later is required; 1.4.16 or newer is recommended.
    GNU M4 1.4.15 uses a buggy replacement strstr on some systems.
    Glibc 2.9 - 2.12 and GNU M4 1.4.11 - 1.4.15 have another strstr bug.
    View Code

    解决方法(参考网址:http://blog.csdn.net/ldl22847/article/details/8575140

    cd /usr/local/src
    wget -O m4-1.4.9.tar.gz http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
    tar -zvxf m4-1.4.9.tar.gz
    cd m4-1.4.9
    ./configure
    make && make install
    View Code

     6-2、启动MySQL:

     * MySQL server PID file could not be found!
    Starting MySQL
    .. * The server quit without updating PID file (/usr/local/mysql/mysql.pid).

    解决方法参考网址: http://www.jb51.net/article/48625.htm

    个人解决方法:删除安装后的MySQL目录及下面的所有文件,重新编译安装。

     6-3、权限不够(参考:http://www.webfxb.com/procedure/mysql/20140125_1021.html):

    [root@vn /]# /etc/init.d/mysqld start
    -bash: /etc/init.d/mysqld: 权限不够
    [root@vn /]# service mysqld start
    env: /etc/init.d/mysqld: 权限不够
    [root@vn /]# chmod a+wrx /etc/init.d/mysqld            以root执行此命令
    [root@vn /]# service mysqld start
    Starting MySQL...                                          [确定]

    7、其他安装参考网址:

    使用cmake安装mysql5.5.13:http://blog.chinaunix.net/uid-10435474-id-2957157.html

    linux cmake 安装mysql5.5.11,以及更高版本:http://www.360doc.com/content/12/0304/19/2054285_191664568.shtml

    Linux下的Nano命令:http://www.cnblogs.com/haichuan3000/articles/2125943.html

    CMAKE安装MYSQL 5.6.10:http://www.2cto.com/database/201305/208302.html

    LINUX下使用CMAKE安装MYSQL(源码编译):http://www.cnblogs.com/AloneSword/archive/2013/03/18/2966750.html

    问题处理参考网址:

    解决bash: mysql: command not found 的方法:http://www.jb51.net/article/34622.htm

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock':http://blog.csdn.net/wyzxg/article/details/4720041

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2):http://www.cnblogs.com/chinas/p/4504533.html

  • 相关阅读:
    Golang进阶实战之IO操作
    动态获取输入框光标在页面中的位置! || 动态添加 style标签 || 获取元素样式 || 获取元素在页面中的位置
    v-select插件
    各种创建数组的方法
    百度UEditor编辑器
    vue-router 各种守卫以及流程梳理
    Snipaste 一款好用的 windows截图工具
    ant-design-vue
    罕见的css样式
    vue图片点击放大预览v-viewer
  • 原文地址:https://www.cnblogs.com/chinas/p/4507986.html
Copyright © 2011-2022 走看看