ITPub博客

首页 > 数据库 > MySQL > linux mysql 安装步骤- 源码安装5.7.17 版本

linux mysql 安装步骤- 源码安装5.7.17 版本

原创 MySQL 作者:huangdazhu 时间:2017-05-11 14:35:16 0 删除 编辑

                   最近没有经常出差,特定温习一下mysql的相关知识,以备需要!

1:首先下载mysql 二进制安装文件
mysql-5.6.17.tar.gz
存放目录/u01/soft/mysql-5.6.17.tar.gz
tar -xf mysql-5.6.17.tar.gz
cd mysql-5.6.17
进行cmake,但是提示没有安装cmake

2:下载cmake
cmake-2.8.10.2.tar.gz
tar -xf cmake-2.8.10.2.tar.gz
./configure
make && make install

3:进行cmake
    先创建mysql 安装目录以及数据文件存放目录
        mkdir -p /mysql
        mkdir -p /mysql/data
    同时需要创建mysql 账号
        useradd mysql
        passwd mysql
    再进行目录授权:
        chown -R mysql:mysql /mysql
   cd mysql-5.6.17
 cmake \
        -DCMAKE_INSTALL_PREFIX=/mysql/ \               //mysql软件安装的根目录
        -DMYSQL_DATADIR=/mysql/data \                   //mysql 数据文件存放目录
        -DSYSCONFDIR=/etc \                                    //mysql  配置文件(my.cnf)目录
        -DWITH_MYISAM_STORAGE_ENGINE=1 \         // 存储引擎选项
        -DWITH_INNOBASE_STORAGE_ENGINE=1 \    // 以启用InnoDB、引擎支持:
        -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          //字符集校对
    进行编译,编译时报错如下:
            heck size of wctype_t - done
            -- Check size of wint_t
            -- Check size of wint_t - done
            -- Could NOT find Curses (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH) 
                CMake Error at cmake/readline.cmake:85 (MESSAGE):
                  Curses library not found.  Please install appropriate package,


              remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
            Call Stack (most recent call first):
              cmake/readline.cmake:128 (FIND_CURSES)
              cmake/readline.cmake:202 (MYSQL_USE_BUNDLED_EDITLINE)
              CMakeLists.txt:411 (MYSQL_CHECK_EDITLINE)
    这个报错是提示缺少ncurses-devel依赖包
    进行下载:ncurses-devel-5.7-3.20090208.el6.x86_64.rpm
        rpm -ivh ncurses-devel-5.7-3.20090208.el6.x86_64.rpm 
        warning: ncurses-devel-5.7-3.20090208.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
        Preparing...                ########################################### [100%]
       1:ncurses-devel          ########################################### [100%]
    同时rm -rf CMakeCache.txt 然后进行重新cmake
        完成之后,进行make && make install 进行mysql 安装
        - Installing: /mysql/man/man1/msql2mysql.1
        -- Installing: /mysql/man/man8/mysqld.8
        -- Installing: /mysql/support-files/solaris/postinstall-solaris
        算安装完成了,接下来就需要进行配置
4: 进入到mysql的安装目录,/mysql下:进行mysql 数据库初始化
        scripts/mysql_install_db --basedir=mysql --datadir=/mysql/data --user=mysql  //初始化mysql数据库
      但是报错
        [root@db_test scripts]# ./mysql_install_db  --basedir=mysql --datadir=/mysql/data --user=mysql
            FATAL ERROR: Could not find ./bin/my_print_defaults
               cd  /u01/soft/mysql-5.6.17/support-files
         
            cp  my-default.cnf /usr/local/mysql/my.cnf //copy配置文件

            [root@db_test support-files]# chown -R mysql:mysql /mysql
        vi /my.cnf 添加以下内容
    [mysqld]
    basedir = /mysql          
    datadir = /mysql/data  
    log-error = /mysql/mysql_error.log          
    pid-file = /mysql/mysql.pid          
    user = mysql
    tmpdir = /tmp 

    初始化mysql数据库
[root@db_test scripts]# ./mysql_install_db  --basedir=/mysql --datadir=/mysql/data --user=mysql
Installing MySQL system tables...2017-05-11 15:01:56 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-05-11 15:01:56 8161 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-05-11 15:01:56 8161 [Note] InnoDB: The InnoDB memory heap is disabled
2017-05-11 15:01:56 8161 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-05-11 15:01:56 8161 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-05-11 15:01:56 8161 [Note] InnoDB: Using CPU crc32 instructions
2017-05-11 15:01:56 8161 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2017-05-11 15:01:56 8161 [Note] InnoDB: Completed initialization of buffer pool
2017-05-11 15:01:56 8161 [Note] InnoDB: Highest supported file format is Barracuda.
2017-05-11 15:01:56 8161 [Note] InnoDB: Log scan progressed past the checkpoint lsn 1600617
2017-05-11 15:01:56 8161 [Note] InnoDB: Database was not shutdown normally!
2017-05-11 15:01:56 8161 [Note] InnoDB: Starting crash recovery.
2017-05-11 15:01:56 8161 [Note] InnoDB: Reading tablespace information from the .ibd files...
2017-05-11 15:01:56 8161 [Note] InnoDB: Restoring possible half-written data pages 
2017-05-11 15:01:56 8161 [Note] InnoDB: from the doublewrite buffer...

    或使用下列命令把mysql添加为系统服务
    cd/mysql/support-files/   
    cp ./mysql.server /etc/init.d/mysqld  
    /etc/init.d/mysqld start

    在配置环境变量
export PATH=$PATH:/mysql/bin

    [mysql@db_test ~]$ mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.17 Source distribution


Copyright (c) 2000, 2014, 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 |
| test               |
+--------------------+
2 rows in set (0.00 sec)


mysql> 



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28869493/viewspace-2138905/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-05-08

  • 博文量
    178
  • 访问量
    463070