• ADADADADAD

    CentOS7.4环境下怎么用源码安装Mysql 5.7.26[ mysql数据库 ]

    mysql数据库 时间:2024-11-28 13:02:49

    作者:文/会员上传

    简介:

    一、软件安装1. 安装必要的软件依赖yum-yinstallgccgcc-c++ncursesncurses-develbisoncmakemake2、下载mysql源码包mkdir/softwarecd/softwarewgethttps://dev.mysql.com/ge

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    一、软件安装1. 安装必要的软件依赖
    yum-yinstallgccgcc-c++ncursesncurses-develbisoncmakemake
    2、下载mysql源码包
    mkdir/softwarecd/softwarewgethttps://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26.tar.gz

    查看下载包:

    [root@localhostsoftware]#lsmysql-5.7.26.tar.gz
    3、解压mysql源码包

    tar -zxvf mysql-5.7.26.tar.gz

    3、配置编译mysql源码包

    进入解压后的目录,为了保持源码干净,新建子目录 yunxiaochong,在子目录下编译

    [root@localhostsoftware]#lsmysql-5.7.26mysql-5.7.26.tar.gz[root@localhostsoftware]#cdmysql-5.7.26/[root@localhostmysql-5.7.26]#mkdiryunxiaochong[root@localhostmysql-5.7.26]#cdyunxiaochong/

    cmake配置:

    cmake..-DCMAKE_INSTALL_PREFIX=/usr/local/mysql\-DWITH_MYISAM_STORAGE_ENGINE=1\-DWITH_INNOBASE_STORAGE_ENGINE=1\-DWITH_MEMORY_STORAGE_ENGINE=1\-DWITH_READLINE=1\-DENABLED_LOCAL_INFILE=1\-DWITH_PARTITION_STORAGE_ENGINE=1\-DEXTRA_CHARSETS=all\-DDEFAULT_CHARSET=utf8\-DDEFAULT_COLLATION=utf8_general_ci\-DWITH_SSL=bundled\-DDOWNLOAD_BOOST=1\-DWITH_BOOST=/tmp

    注:

    如果编译出现错误,请先删除CMakeCache.txt后,再重新编译:

    rm-rfCMakeCache.txt

    如果出现下面的提示就表示成功生成了编译环境:

    -- Configuring done

    -- Generating done

    编译:

    make-j10

    安装:

    makeinstal
    二、数据库安装1、创建用户

    1

    2

    groupaddmysql

    useradd-gmysqlmysql

    2、创建目录,并修改目录属主和添加环境变量
    mkdir-p/data/mysql/{3306,3307}/{data,log}
    chown-Rmysql:mysql/data/mysql/chown-Rmysql:mysql/usr/local/mysql/
    echo'exportPATH=$PATH:/usr/local/mysql/bin'>>/etc/profilesource/etc/profile
    3、创建配置文件

    3306

    vim/data/mysql/3306/my3306.cnf

    内容如下:

    [mysqld]basedir=/usr/local/mysqldatadir=/data/mysql/3306/dataport=3306socket=/data/mysql/3306/mysql3306.sockcharacter-set-server=utf8log-error=/data/mysql/3306/log/error3306.logpid-file=/data/mysql/3306/mysqld3306.pid

    3307

    vim/data/mysql/3307/my3307.cnf

    内容如下:

    [mysqld]basedir=/usr/local/mysqldatadir=/data/mysql/3307/dataport=3307socket=/data/mysql/3307/mysql3307.sockcharacter-set-server=utf8log-error=/data/mysql/3307/log/error3307.logpid-file=/data/mysql/3307/mysqld3307.pid
    4、数据库初始化

    (1) 3306

    1

    mysqld--defaults-file=/data/mysql/3306/my3306.cnf--initialize--user=mysql

    (2) 3307

    1

    mysqld--defaults-file=/data/mysql/3307/my3307.cnf--initialize--user=mysql

    5、数据库启动

    ( 1) 3306

    cd/usr/local/mysql/bin./mysqld_safe--defaults-file=/data/mysql/3306/my3306.cnf--user=mysql&

    (2)3307

    cd/usr/local/mysql/bin./mysqld_safe--defaults-file=/data/mysql/3307/my3307.cnf--user=mysql&
    6、获取初始密码

    [root@localhost bin]# less /data/mysql/3307/log/error3307.log|grep 'A temporary password'

    2019-07-22T02:04:41.482707Z 1 [Note] A temporary password is generated for root@localhost: Kjipuugr0:0v

    登录报错:

    [mysql@localhost ~]$ mysql -uroot -P3306 -S /data/mysql/3307/mysql3307.sock -p

    Enter password:

    ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords.

    解决方法:

    (1)先关闭数据库实例,由于不能登录,所以只能有kill -9 执行杀掉进程。

    (2)再配置文件中,添加选项skip-grant-tables

    (3)重启数据库实例

    (4)免密码登录:

    mysql-uroot-P3306-S/data/mysql/3306/mysql3306.sock

    (5.1)修改密码过期策略:

    MySQL[none]>usemysqlMySQL[mysql]>updateusersetpassword_expired='N'whereuser='root';QueryOK,1rowaffected(0.00sec)Rowsmatched:1Changed:1Warnings:0

    (5.2)修改密码:

    MySQL[none]>usemysqlMySQL[mysql]>updateusersetauthentication_string=password("Yxc@3306")whereuser="root";QueryOK,1rowaffected(0.00sec)Rowsmatched:1Changed:1Warnings:0

    (6)重启数据库实例

    [mysql@localhost~]$mysqladmin-uroot-S/data/mysql/3306/mysql3306.sockshutdowncd/usr/local/mysql/bin
    ./mysqld_safe--defaults-file=/data/mysql/3306/my3306.cnf--user=mysql&
    7、创建用户
    MySQL[(none)]>createUSER'root'@'%'IDENTIFIEDWITHmysql_native_passwordBY'Yxc3307';QueryOK,0rowsaffected(0.00sec)MySQL[(none)]>grantallprivilegeson*.*to'root'@'%';QueryOK,0rowsaffected(0.00sec)

    说明:

    MySQL8.0之前的版本密码加密规则:mysql_native_password,

    MySQL8.0密码加密规则:caching_sha2_password

    8、navicat 登录
    CentOS7.4环境下怎么用源码安装Mysql 5.7.26.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysqlcentos