美文网首页
MySQL安装命令

MySQL安装命令

作者: zxk175 | 来源:发表于2019-01-04 15:19 被阅读9次

    MySql安装

    1、

    yum -y install libaio
    wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

    2、

    cd /usr/local/soft/mysql/src
    mkdir ../5.7.24_3306 && tar -xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz -C ../5.7.24_3306 --strip-components 1

    3、

    mkdir -p /usr/local/soft/mysql/5.7.24_3306/{run,data,logs,bin_log,sock,cert}

    4、

    groupadd mysql && useradd -r -g mysql -s /bin/false mysql

    5、

    cd /usr/local/soft/mysql/5.7.24_3306/bin && ./mysqld --initialize
    --explicit_defaults_for_timestamp
    --user=mysql
    --basedir=/usr/local/soft/mysql/5.7.24_3306
    --datadir=/usr/local/soft/mysql/5.7.24_3306/data
    --lc_messages_dir=/usr/local/soft/mysql/5.7.24_3306/share
    --lc_messages=en_US

    6、

    2018-12-01T09:56:45.934627Z 0 [Warning] InnoDB: New log files created, LSN=45790
    2018-12-01T09:56:46.056837Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
    2018-12-01T09:56:46.127141Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 69d028f9-f54f-11e8-9c4a-00163e08e793.
    2018-12-01T09:56:46.130249Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
    2018-12-01T09:56:46.131377Z 1 [Note] A temporary password is generated for root@localhost: sDdPx3>.,oBi

    7、可忽略此操作

    cd /usr/local/soft/mysql/5.7.24_3306/bin && ./mysql_ssl_rsa_setup --datadir=/usr/local/soft/mysql/5.7.24_3306/cert
    修改证书权限为644

    8、

    8.1
    编辑mysql.server 添加datadir
    
    8.2
    touch /usr/local/soft/mysql/5.7.24_3306/logs/error.err
    chown -R mysql:mysql /usr/local/soft/mysql/5.7.24_3306
    cd /usr/local/soft/mysql/5.7.24_3306/support-files && ./mysql.server start
    

    9、

    cd /usr/local/soft/mysql/5.7.24_3306/bin && ./mysql -uroot -psDdPx3>.,oBi -S /usr/local/soft/mysql/5.7.24_3306/sock/mysql.sock

    10、

    use mysql;
    update user set host = '%', authentication_string = password('123456') where user = 'root';
    select host,user,authentication_string from user;
    flush privileges;

    grant all privileges on . to 'root'@'%';
    flush privileges;

    11、

    cat >/usr/lib/systemd/system/3306.service <<EOF
    [Unit]
    Description=MySQL 3306
    Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
    After=network.target remote-fs.target nss-lookup.target

    [Service]
    Type=forking
    PIDFile=/usr/local/soft/mysql/5.7.24_3306/run/mysql.pid
    ExecStart=/usr/local/soft/mysql/5.7.24_3306/support-files/mysql.server start
    ExecReload=/usr/local/soft/mysql/5.7.24_3306/support-files/mysql.server restart
    ExecStop=/usr/local/soft/mysql/5.7.24_3306/support-files/mysql.server stop
    PrivateTmp=true

    [Install]
    WantedBy=multi-user.target
    EOF

    12、开机启动

    systemctl enable 3306.service

    忘记密码

    1、

    以不启用grant-tables模式启动mysql

    cd /usr/local/soft/mysql/5.7.24.3306/bin && ./mysqld_safe --skip-grant-tables &

    为了安全可以这样禁止远程连接:

    cd /usr/local/soft/mysql/5.7.24.3306/bin && ./mysqld_safe --skip-grant-tables --skip-networking &

    2、
    ./mysql -uroot -p -S /usr/local/soft/mysql/5.7.24.3306/sock/mysql.sock

    3、
    use mysql;
    update mysql.user set authentication_string=password('123456') where user='root';
    flush privileges;

    复制文件夹

    mkdir -p /usr/local/soft/mysql/back/5.7.23_3306 && cp -Rf /usr/local/soft/mysql/5.7.23_3306/* /usr/local/soft/mysql/back/5.7.23_3306
    mkdir -p /usr/local/soft/mysql/back/5.7.24_3306 && cp -Rf /usr/local/soft/mysql/5.7.24_3306/* /usr/local/soft/mysql/back/5.7.24_3306

    创建用户

    CREATE USER 'sdyc'@'%' IDENTIFIED BY '123456';
    GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE ON sd_data.* TO 'sdyc'@'%';
    GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE ON card_data.* TO 'sdyc'@'%';
    SHOW GRANTS FOR sdyc;

    CREATE USER 'back'@'localhost' IDENTIFIED BY '123456';
    GRANT SELECT, RELOAD, PROCESS, SHOW DATABASES, SUPER, LOCK TABLES, REPLICATION CLIENT ON . TO 'back'@'localhost'
    SHOW GRANTS FOR back;

    REVOKE SELECT, INSERT, UPDATE, DELETE, EXECUTE ON sd_data.* FROM 'sdyc'@'%';

    相关文章

      网友评论

          本文标题:MySQL安装命令

          本文链接:https://www.haomeiwen.com/subject/llxkrqtx.html