mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz 的安装与配置(附安装包)

64 阅读3分钟

​第一步:准备工作(找块好地方)

  1. 上传安装包安装包下载:pan.quark.cn/s/57dcaa618…,首先,你得把这个 mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz文件传到你的Linux服务器上。比如,你可以用FTP工具或者scp命令把它扔到 /usr/local/src目录下。这个目录通常就是放这些源码包的地方。

  2. 检查老版本:为了防止打架,先看看系统里有没有自带的旧版MySQL。有的话就请它离开。

    rpm -qa | grep mysql
    

    如果上面命令列出了什么包,比如 mysql-libs,就用下面的命令卸载掉(以实际查到的名字为准):

    rpm -e --nodeps 查到的包名
    

第二步:解压和安排“住处”

  1. 进入目录并解压

    cd /usr/local/src
    tar -xzf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
    
  2. 挪到最终位置并改个短名:解压后会得到一个长长的文件夹名,我们把它挪到 /usr/local下,并改名叫 mysql,这样方便以后操作。

    mv mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql
    

第三步:创建专属用户和目录

  1. 创建mysql用户组和用户:让MySQL用一个专门的用户来运行,这样更安全。

    groupadd mysql
    useradd -r -g mysql -s /bin/false mysql # 创建一个不能登录系统的mysql用户
    
  2. 创建数据存放目录:MySQL的所有数据(比如你建的数据库、表)都会放在这里。通常我们放在 /data/mysql

    mkdir -p /data/mysql
    
  3. 把目录的“所有权”给mysql用户

    chown -R mysql:mysql /data/mysql
    chown -R mysql:mysql /usr/local/mysql
    

第四步:初始化数据库

这是最关键的一步,相当于给新MySQL房子置办家具。

进入MySQL的家,执行初始化命令:

cd /usr/local/mysql
./bin/mysqld --initialize --user=mysql --datadir=/data/mysql

注意看屏幕输出! 命令执行完后,会有一行类似这样的信息:

[Note] A temporary password is generated for root@localhost: 这里是一串随机密码

一定拿个小本本把这个临时密码记下来! 第一次登录全靠它。

第五步:配置和启动

  1. 复制配置文件:MySQL需要一个叫 my.cnf的配置文件。安装包里有现成的模板,我们复制一份。

    cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
    

    如果 /etc下已经有一个 my.cnf文件,它会问你是否覆盖,你根据情况选择。如果没有现成的,直接复制过去就行。

  2. 复制启动脚本:让系统知道怎么启动和停止MySQL服务。

    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
    
  3. 启动MySQL服务

    service mysqld start
    

    如果看到 Starting MySQL. SUCCESS!就说明启动成功了。

第六步:首次登录和修改密码

  1. 用临时密码登录:现在可以用刚才记下的那个又长又丑的临时密码登录了。

    /usr/local/mysql/bin/mysql -u root -p
    

    输入密码时,屏幕不会显示星号,你正常输入后按回车就行。

  2. 赶紧修改root密码:一登录成功,马上做这件事,不然什么操作都不让你做。

    SET PASSWORD = PASSWORD('你的新密码');
    

    比如你想把密码改成 123456,就写 SET PASSWORD = PASSWORD('123456');。当然,实际使用时要用个复杂点的密码。

  3. 让外部机器也能连接(可选) :如果你只是本机用,这步可以跳过。如果想让别的电脑也能连这个数据库,需要授权。

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的新密码' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    
  4. 退出

    exit