Linux MySQL安装配置,自启动,初始化,远程授权

本文详细介绍在Linux环境下安装MySQL数据库的过程,包括下载安装包、创建用户、初始化数据库、配置文件编辑、服务启动及自启动设置、密码初始化和远程授权等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

  1. 下载安装包
    下载地址:https://dev.mysql.com/downloads/mysql/
  2. 登录linux主机,切换root用户,创建mysql用户及用户组
    # groupadd mysql
    # useradd -g mysql -d /mysql -m mysql
    # mkdir /mysql/data

     

  3. 解压安装包并解压到目录/mysql下
    # tar -xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
    # cd mysql-5.7.24-linux-glibc2.12-x86_64
    # mv * /mysql

     

  4. 初始化数据库,此时会出现root用户初始密码 dcGV&Pk8yk1f ,记录下来
    # cd /mysql
    # ./bin/mysqld --user=mysql --basedir=/mysql --datadir=/mysql/data --initialize
    
    2018-11-02T08:12:14.468062Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
    2018-11-02T08:12:14.588001Z 0 [Warning] InnoDB: New log files created, LSN=45790
    2018-11-02T08:12:14.636800Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
    2018-11-02T08:12:14.728791Z 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: 01c9f5d4-de77-11e8-8bc2-0800278ecbd0.
    2018-11-02T08:12:14.732082Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
    2018-11-02T08:12:14.734684Z 1 [Note] A temporary password is generated for root@localhost: dcGV&Pk8yk1f

    P.S.如果出现"[ERROR] --initialize specified but the data directory has files in it. Aborting.",则清空数据文件夹后再执行上一步中4的初始化指令

    # cd /mysql/data
    # rm -fr *

     

  5. 编辑配置文件/mysql/support-files/mysql.server
    # vim /mysql/support-files/mysql.server
    
    ...
    basedir=/mysql
    datadir=/mysql/data
    ... 

     

  6. 创建软连接
    # ln -s /mysql/bin/mysql /usr/bin/mysql
    # ln -s /mysql/bin/mysql /usr/bin/
    # ln -s /mysql/bin/mysqladmin /usr/bin/

     

  7. 创建配置文件/etc/my.cnf
    # vim /etc/my.cnf
    
    [mysql]
    default-character-set=utf8
    socket=/mysql/socket/mysql.sock
    
    [mysqld]
    datadir=/mysql/data
    basedir=/mysql
    user=mysql
    socket=/mysql/socket/mysql.sock
    log-error=/mysql/log/mysqld.log
    
    symbolic-links=0
    
    character_set_server=utf8
    init_connect='SET NAMES utf8'
    
    [mysqld_safe]
    log-error=/mysql/log/safe-mysqld.log
    pid-file=/mysql/pid/mysqld.pid
  8. 创建配置文件中的相关路径并创建文件,并将mysql文件夹赋权给mysql用户
    mkdir /mysql/socket
    mkdir /mysql/socket
    mkdir /mysql/log
    mkdir /mysql/pid
    touch /mysql/log/mysqld.log
    touch /mysql/socket/mysql.sock
    
    chown -R mysql:mysql mysql/

     

  9. 启动服务
    ./mysql/support-files/mysql.server start
    Starting MySQL. SUCCESS! 
    

     

  10. 设置mysql为自启动
    拷贝启动文件到/etc/init.d/下并重命令为mysqld,增加执行权限

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

     添加自启动

    # chkconfig --list mysqld
    # chkconfig --add mysqld
    
    # chkconfig mysqld on

     

  11. 初始化root用户密码

    此时使用记录下来的初始密码进行初始化,并输入初始密码dcGV&Pk8yk1f,设置新密码为123

    #mysql -u root -p mysql
    
    Enter password: dcGV&Pk8yk1f
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 5
    Server version: 5.7.24
    
    Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql> set password for root@localhost = password('123');

     

  12. mysql远程授权

    grant all privileges on *.* to 'root'@'%' identified by '123';
    FLUSH PRIVILEGES;

     

    done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值