• centos6 编译安装 mysql5.6----------centos7编译安装MySQL5.7


     centos6 编译安装 mysql5.6

    安装依赖包

    yum  install  -y  ncurses-devel libaio-devel

      安装cmake编译工具

      cmake

      定制功能:存储引擎、字符集、压缩等

      定制安装位置、数据存储位置、文件位置(socket)

    yum install cmake -y

      创建mysql管理用户

    useradd -s /sbin/nologin -M mysql -u1000
    id mysql
    • 下载安装包并解压

    mkdir /server/tools/  -p   && cd /server/tools

    wget -q http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.40.tar.gz     网易源

    wget   https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.6/mysql-5.6.40.tar.gz  清华源

    tar  xf   mysql-5.6.40.tar.gz

    • 进入查询目录,使用cmake进行编译,安装,创建软连接,过程时间较长。
    cd mysql-5.6.40
    cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 
    -DMYSQL_DATADIR=/application/mysql-5.6.40/data 
    -DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/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=bundled 
    -DENABLED_LOCAL_INFILE=1 
    -DWITH_EMBEDDED_SERVER=1 
    -DENABLE_DOWNLOADS=1 
    -DWITH_DEBUG=0
    make && make install
    ln -s /application/mysql-5.6.40/ /application/mysql

    数据库安装后的操作

    •   复制配置文件
    cp  /application/mysql/support-files/my-default.cnf /etc/my.cnf

      编译的MySQL可以暂时不需要设置配置文件。

      注意:如果以前操作系统中安装过rpm格式的mysql,系统中可能会遗留/etc/my.cnf文件,我们需要将它删除掉

    • 初始化数据库
    /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql

      防止报错:数据库启动会提示,找不到xx/tmp/mysql.sock,原因是5.6.40版本不会自动创建tmp目录,需要我们手工创建。

    mkdir /application/mysql/tmp

      修改程序目录的属主,属组

    chown -R mysql.mysql /application/mysql/

      复制启动脚本,并修改权限

    cp support-files/mysql.server /etc/init.d/mysqld
    chmod 700 /etc/init.d/mysqld

      添加环境变量,使用mysql命令

    echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile
    tail -1 /etc/profile
    source /etc/profile
    echo $PATH
    启动数据库
    /etc/init.d/mysql start mysql

     数据库安全设置

      设置root用户密码

    mysqladmin -u root password '123456'
    mysql -uroot -p123456

      优化数据库(清理用户及无用数据库)

    select user,host from mysql.user;
    drop user ''@'db02';
    drop user ''@'localhost';
    drop user 'root'@'db02';
    drop user 'root'@'::1';
    select user,host from mysql.user;
    drop database test;
    show databases;

    centos7安装MySQL5.7

    安装依赖包
    yum -y install ncurses ncurses-devel bison cmake gcc gcc-c++


    wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz #mysql5.7源码安装需要boost,这个包下载自带boost

    tar xf mysql-boost-5.7.27.tar.gz

    cd mysql-boost-5.7.27
    指定安装路径
    cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.7.27
    -DMYSQL_DATADIR=/application/mysql-5.7.27/data
    -DMYSQL_UNIX_ADDR=/application/mysql-5.7.27/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=bundled
    -DENABLED_LOCAL_INFILE=1
    -DWITH_EMBEDDED_SERVER=1
    -DENABLE_DOWNLOADS=1
    -DWITH_DEBUG=0
    -DWITH_BOOST=/opt/mysql-5.7.27/boost
    指定boost,自行修改路径


    make && make install


    ln -s /application/mysql-5.7.27/ /application/mysql


    mkdir /application/mysql-5.7.27/tmp -p
    mkdir /usr/local/mysql/ -p

    vim /etc/my.cnf
    [mysqld]
    user=mysql
    basedir=/application/mysql
    datadir=/application/data
    pid-file=/usr/local/mysql/mysql.pid
    socket=/application/mysql/tmp/mysql.sock

    初始化数据:
    cd /application/mysql/bin
    ./mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/application/data/
    记住生成的密码
    5%.F9_pkrT?=

    修改软件路径归属:
    chown -R mysql.mysql /application/mysql/
    chown -R mysql.mysql /usr/local/mysql/

    拷贝启动脚本到Sys-v模式目录:
    cp /application/mysql-5.7.27/support-files/mysql.server /etc/init.d/mysqld

    chmod 700 /etc/init.d/mysqld

    启动服务
    /etc/init.d/mysqld start

    检查服务是否启动
    ps -ef|grep mysql


    添加开启自启动
    chkconfig --add mysqld
    chkconfig mysqld on

    设置环境变量
    echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile
    source /etc/profile

    修改密码(必须修改密码才能登录)
    mysqladmin -uroot -p password



    密码忘记咋办?

     第一步:将服务停掉

    /etc/init.d/mysqld stop
      第二步:加参数启动服务

    cd /application/mysql/bin/
    mysqld_safe --skip-grant-table --user=mysql --skip-networking &
      这种模式下
        无密码登陆
        网络用户无法登陆
        只能本地登陆
        和授权有关的命令都无法执行

      第三步:修改密码

    [root@db02 3306]# mysql
    mysql> update mysql.user set password=password('123') where user='root' and host='localhost';
    mysql> flush privileges;
        MYSQL5.7 修改密码修改字段 authentication_string

      第四步:退出重启服务

    /etc/init.d/mysqld restart
      第五步:登录验证

    mysql -uroot -p123
      至此密码修改成功

  • 相关阅读:
    fortran imsl 程序库
    使用NET USE将USB端口模拟为LPT1
    Processing鼠标响应(1)
    MATLAB矩阵运算(1)
    Processing中类的定义
    Perl的第二纪
    Processing鼠标响应(2)
    Processing中的图片互动
    gFortran的使用
    用回溯法来产生由0或1组成的2m个二进位串,使该串满足以下要求
  • 原文地址:https://www.cnblogs.com/yuanjinqiu/p/10220720.html
Copyright © 2020-2023  润新知