zoukankan      html  css  js  c++  java
  • CentOS7源码安装MySQL

    CentOS7源码安装MySQL

    1:安装依赖包

      执行:yum -y install ncurses-devel gcc-* bzip2-* bison

      

    2:升级cmake工具(我用的是cmake-3.22.0-rc1.tar.gz)下载地址

      源码安装基本步骤

        1:解压:tar -xzvf  cmake-3.22.0-rc1.tar.gz

        2:配置:./config

        3:编译:make -j4

        4:安装:make install

        5:测试安装

          

    3:升级boost库文件(boost_1_59_0.tar.gz) 下载地址

      boost是个绿色软件,直接解压后移动到 /usr/local/boost

      mv boost_1_59_0 /usr/local/boost

    4:安装mysql(mysql-5.7.24.tar.gz) 下载地址

                  1:先解压文件  

        tar xf mysql-5.7.24.tar.gz

        进入解压后文件中并没有找到 config文件,所以就需要用cmake来安装

        

       2:cmake 安装mysql指令 参考文档  

    cmake  
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql         # 指定安装路径
    -DMYSQL_DATADIR=/usr/local/mysql/data         # 指定数据目录
    -DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysqld.sock  # 指定sock文件路径
    -DWITH_MYISAM_STORAGE_ENGINE=1         # 安装MYISAM存储引擎
    -DWITH_INNOBASE_STORAGE_ENGINE=1         # 安装INNOBASE存储引擎
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1         # 安装BLACKHOLE存储引擎
    -DWITH_ARCHIVE_STORAGE_ENGINE=1         # 安装ARCHIVE存储引擎
    -DENABLED_LOCAL_INFILE=1             # 允许使用Load Data命令从本地导入
    -DEXTRA_CHARSETS=all                 # 安装所有字符集
    -DDEFAULT_CHARSET=utf8                 # 默认字符集utf-8
    -DDEFAULT_COLLATION=utf8_general_ci         # 校验字符
    -DMYSQL_USER=mysql                 # mysqld运行用户
    -DWITH_DEBUG=0                 # 关闭debug
    -DWITH_EMBEDDED_SERVER=1             # 生成一个libmysqld.a(.so)的库,这个库同时集成了mysql服务与客户端API
    -DDOWNLOAD_BOOST=1                 # 允许boost
    -DENABLE_DOWNLOADS=1                 # 允许下载boost库文件
    -DWITH_BOOST=/usr/local/boost             #  boost文件路径
    -DMYSQL_TCP_PORT=3306                 # MySQL 监听端口
    -DSYSCONFDIR=/usr/local/mysql/etc/my.cnf         # 系统配置目录
    -DWITH_SSL=yes                      # 支持SSL
    -DWITH_SSL=system                 # 启用ssl库支持(安全套接层)

      3:执行cmake指令配置

    cmake 
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
    -DMYSQL_DATADIR=/data/mysqldb 
    -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock 
    -DWITH_MYISAM_STORAGE_ENGINE=1 
    -DWITH_INNOBASE_STORAGE_ENGINE=1 
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 
    -DWITH_ARCHIVE_STORAGE_ENGINE=1 
    -DENABLED_LOCAL_INFILE=1 
    -DEXTRA_CHARSETS=all 
    -DDEFAULT_CHARSET=utf8 
    -DDEFAULT_COLLATION=utf8_general_ci 
    -DWITH_DEBUG=0 
    -DWITH_EMBEDDED_SERVER=1 
    -DDOWNLOAD_BOOST=1 
    -DENABLE_DOWNLOADS=1 
    -DWITH_BOOST=/usr/local/boost 
    -DMYSQL_TCP_PORT=3306 
    -DWITH_SSL=system
    View Code

      复制指令到命令行只要不报错就回车

      

       注意:在回车之前如果mysql源码目录中有CMakeCache.txt需要先删除 CMakeCache.txt 文件

      配置成功如下

      

       编译:make -j4

        安装过程会很长.............

        

       安装:make install

         

      mysql设置:

        1:拷贝一个启动文件

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

         2:给文件赋权限

          chmod 755 /etc/init.d/mysql

        3:设置所有者为mysql,默认为root

         创建用户:useradd  -s /sbin/nologin -r mysql

         设置:chown mysql.mysql /usr/local/mysql/ -R

         查看:ll /usr/local/mysql/(注意看名字是否由root 改为了mysql)

          

        4:建立连接

          ln -sf /usr/local/mysql/bin/* /usr/bin/

          ln -sf /usr/local/mysql/lib/* /usr/lib/

          ln -sf /usr/local/mysql/libexec/* /usr/local/libexec

          ln -sf /usr/local/mysql/share/man/man1/* /usr/share/man/man1

          ln -sf /usr/local/mysql/share/man/man8/* /usr/share/man/man8

        5:修改配置文件(/etc/my.conf)

          

        6:初始化数据库:

            执行:/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

        注意:上面有个error,在配置文件中改了即可,上面第五步截图是修改后的,关于日志路径配置。 

        6:启动测试

          /etc/init.d/mysql start

         7:密码修改

          执行:mysql_secure_installation

          

           

           

         8:mysql添加新用户并且设置远程链接 参考文档

          

  • 相关阅读:
    Linux Systemcall By INT 0x80、Llinux Kernel Debug Based On Sourcecode
    ELF(Executable and Linkable Format)
    Linux文件权限;ACL;Setuid、Setgid、Stick bit特殊权限;sudo提权
    Linux System Calls Hooking Method Summary
    GCC、Makefile编程学习
    Linux Process/Thread Creation、Linux Process Principle、sys_fork、sys_execve、glibc fork/execve api sourcecode
    Linux中断技术、门描述符、IDT(中断描述符表)、异常控制技术总结归类
    浅议SNMP安全、SNMP协议、网络管理学习
    DNS安全浅议、域名A记录(ANAME),MX记录,CNAME记录
    RIP、OSPF、BGP、动态路由选路协议、自治域AS
  • 原文地址:https://www.cnblogs.com/wendj/p/15479242.html
Copyright © 2011-2022 走看看