zoukankan      html  css  js  c++  java
  • Mysql_源码包安装详细过程

    一、mysql安装

    1.二进制安装
    2.源码包安装
    3.rpm包安装
    

    1.源码包安装

    1)上传或下载源码包

    [root@db02 ~]# rz mysql-5.6.46.tar.gz
    

    2)安装依赖

    由于安装环境的不同,在生成的过程中可能也会报其它的错误,按照错误的提示安装相应的依耐包即可。

    [root@db02 ~]# yum install -y ncurses-devel libaio-devel gcc gcc-c++ glibc cmake autoconf openssl openssl-devel
    

    3)解压安装包

    [root@db02 ~]# tar xf mysql-5.6.46.tar.gz
    

    4)生成

    [root@db02 ~]# cd mysql-5.6.46/
    [root@db02 mysql-5.6.46]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.46 
    -DMYSQL_DATADIR=/usr/local/mysql-5.6.46/data 
    -DMYSQL_UNIX_ADDR=/usr/local/mysql-5.6.46/tmp/mysql.sock 
    -DDEFAULT_CHARSET=utf8 
    -DDEFAULT_COLLATION=utf8_general_ci 
    -DWITH_EXTRA_CHARSETS=all 
    -DWITH_INNOBASE_STORAGE_ENGINE=1 
    -DWITH_FEDERATED_STORAGE_ENGINE=1 
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 
    -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 
    -DWITH_ZLIB=bundled 
    -DWITH_SSL=system 
    -DENABLED_LOCAL_INFILE=1 
    -DWITH_EMBEDDED_SERVER=1 
    -DENABLE_DOWNLOADS=1 
    -DWITH_DEBUG=0
    

    5)编译和安装

    [root@db02 mysql-5.6.46]# make && make install
    

    6)做软连接

    [root@db02 ~]# ln -s /usr/local/mysql-5.6.46 /usr/local/mysql
    

    7)创建用户

    [root@db02 ~]# useradd mysql -s /sbin/nologin -M
    

    8)拷贝配置文件和启动脚本

    [root@db02 ~]# cd /usr/local/mysql/support-files/
    [root@db02 support-files]# cp my-default.cnf /etc/my.cnf
    cp: overwrite '/etc/my.cnf'? y
    [root@db02 support-files]# cp mysql.server /etc/init.d/mysqld
    

    9)初始化数据库

    [root@db02 support-files]# cd /usr/local/mysql/scripts/
    [root@db02 scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
    

    8)配置system管理mysql

    [root@db02 scripts]# vim /usr/lib/systemd/system/mysqld.service
    [Unit]
    Description=MySQL Server
    Documentation=man:mysqld(8)
    Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html
    After=network.target
    After=syslog.target
    [Install]
    WantedBy=multi-user.target
    [Service]
    User=mysql
    Group=mysql
    ExecStart=/usr/local/bin/mysqld --defaults-file=/etc/my.cnf
    LimitNOFILE = 5000
    
    [root@db02 scripts]# systemctl daemon-reload
    [root@db02 scripts]# systemctl start mysqld
    

    9)启动失败报错

    [root@db02 scripts]# /etc/init.d/mysqld start
    Starting MySQL.Logging to '/usr/local/mysql-5.6.46/data/db02.err'.
    200709 15:42:14 mysqld_safe Directory '/usr/local/mysql-5.6.46/tmp' for UNIX socket file don't exists.
     ERROR! The server quit without updating PID file (/usr/local/mysql-5.6.46/data/db02.pid).
     
    #原因:
    1.cmake过程指定了socket文件位置,实际位置不存在
    2.目录权限不足
     
    #解决:
    [root@db02 scripts]# mkdir /usr/local/mysql-5.6.46/tmp/
    [root@db02 scripts]# chown -R mysql.mysql /usr/local/mysql
    [root@db02 scripts]# chown -R mysql.mysql /usr/local/mysql-5.6.46/
    

    10)启动数据库

    [root@db02 scripts]# systemctl start mysqld
    

    11)配置环境变量

    [root@db03 scripts]# vim /etc/profile.d/mysql.sh
    export PATH=/usr/local/mysql/bin:$PATH
    
    [root@db03 mysql]# source /etc/profile
    

    12)确认启动

    [root@m01 scripts]# ps -ef | grep mysql
    mysql     12886      1  2 03:10 ?        00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
    root      12921  10636  0 03:11 pts/1    00:00:00 grep --color=auto mysql
    [root@m01 scripts]# netstat -lntp   
    tcp6       0      0 :::3306                 :::*                    LISTEN      12886/mysqld        
    


    FBI WARNING
    QQ:1402122292 认准原创sheldon 别人叫我晓东
  • 相关阅读:
    nowcoderD Xieldy And His Password
    Codeforces681D Gifts by the List
    nowcoder80D applese的生日
    Codeforces961E Tufurama
    Codeforces957 Mahmoud and Ehab and yet another xor task
    nowcoder82E 无向图中的最短距离
    nowcoder82B 区间的连续段
    Codeforces903E Swapping Characters
    Codeforces614C Peter and Snow Blower
    Codeforces614D Skills
  • 原文地址:https://www.cnblogs.com/gshelldon/p/13387697.html
Copyright © 2011-2022 走看看