美文网首页
云服务器安装MySQL-5.7.33版本

云服务器安装MySQL-5.7.33版本

作者: 米有意思 | 来源:发表于2021-03-10 23:37 被阅读0次

    操作系统: CentOS 7.8 x86_64
    MySQL版本: 5.7.33
    rpm方式

    1. 检查服务器是否已经安装MySQL

    yum list installed | grep mysql
    
    • 查看当前的启用的 MySQL 版本:
    yum repolist enabled | grep mysql
    
    • 如果检查出来有的话就使用下面这个命令删除
    yum -y remove mysql-libs.x86_64
    

    2. 下载MySQL5.7 rpm源

    wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
    

    3. 安装下载好的rpm包

    rpm -ivh mysql57-community-release-el7-8.noarch.rpm
    
    • 安装成功后,会在 /etc/yum.repos.d/ 目录下增加两个文件

    4. 安装MySQL

    yum install mysql-server
    

    安装过程遇到提示,一直“y”确认即可

    5. 启动MySQL服务

    • 启动MySQL服务
    service mysqld start
    
    • 查看MySQL服务状态
    service mysqld status
    

    6. 查看初始密码

    • 找到控制台 temporary password 后面输出的临时密码,保存备用
    grep "password" /var/log/mysqld.log
    

    7. 登录MySQL

    • 登录MySQL
    mysql -u root -p
    

    输入你刚才查询出来的初始密码

    8. 修改密码

    • 1.使用数据库,前提先使用 step7 登录成功
    use mysql;
    
    • 2.修改密码
    ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
    

    密码也有默认密码策略,密码包括:数字、大写字母、小写字母、特殊符号、长度8位以上。

    9. 开启MySQL远程访问权限 允许远程连接

    • 选择1:设置 root 用户 可以在任意 IP 下被访问:
    grant all privileges on *.* to 'root'@"%" identified by "新密码" with grant option;
    
    • 选择2: 设置 root 用户可以在本地被访问:
    grant all privileges on *.* to 'root'@"localhost" identified by "新密码"  with grant option;
    

    10. 刷新权限

    上面的操作完毕后,一定记得执行以下命令

    flush privileges;
    

    11. 用户设置

    注意:根据自己实际情况处理,是否为新项目创建普通用户,授权某个数据库等等,以下为常用操作命令。

    1. 新建用户

    • 创建一个 普通用户 xx ,密码是xxx
    CREATE USER 'xx'@'localhost' IDENTIFIED BY 'xxx';
    

    此处 'localhost' 是指该用户只能在本地登录,不能在另外一台机器上远程登录。
    如果想远程登录的话,将 "localhost"改为"%" ,表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。

    • 使授权立刻生效
    flush privileges;
    

    2. 查询用户

    select user,host from mysql.user;
    

    3. 删除用户

    • 删除用户 "test"
    drop user test@localhost;
    
    • 若创建的用户允许任何电脑登陆,删除用户如下
    drop user test@'%';
    

    4. 更改密码

    • 方法1,密码实时更新;修改用户“test”的密码为“123456”
    set password for test =password('123456');
    
    • 方法2,需要刷新;修改用户“test”的密码为“123456”
    update mysql.user set password=password('123456') where user='test';
    
    ## 刷新
    flush privileges;
    

    5. 用户分配权限

    1. 授予用户test通过外网IP对数据库“testdb”的全部权限
    grant all privileges on 'testdb'.* to 'test'@'%' identified by '123456'; 
    
    1. 刷新权限
    flush privileges;
    
    • 如果给某个用户授予表数据 CREATE,ALTER,DROP,SELECT,INSERT,UPDATE,DELETE 的远程访问的权限,这个账号一般用于提供给实施的系统访问

    • 以下是:授予用户“test”通过外网IP对于该数据库“testdb”中表的创建、修改、删除权限,以及表数据的增删查改权限的示例语句

    grant create,alter,drop,select,insert,update,delete on testdb.* to test@'%';
    

    注意:修改完权限以后 一定要刷新服务,或者重启服务,刷新服务用:flush privileges;

    12. 退出

    exit;
    

    13. 安装完成后置操作和常用命令

    1. 检查是否已经安装了开机自动启动

    systemctl list-unit-files | grep mysqld
    

    如果显示以下内容说明已经完成自动启动安装

    mysqld.service enabled

    2. 设置开机启动Mysql

    systemctl enable mysqld.service
    

    3. 设置开启服务

    systemctl start mysqld.service
    

    4. 开启阿里云安全组端口策略

    进入控制台,网络和安全->安全组->配置规则,将MySQL监听端口开放即可

    5. 卸载

    因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

    yum -y remove mysql57-community-release-el7-8.noarch
    

    6. 查看端口监听状态

    netstat -an|grep 3306
    

    根据占用情况,找到my.cnf,一般在/etc/mysql/下面,具体情况根据实际而定。注释掉其中的bind-address属性。
    前提,先登录数据库 mysql -u root -p

    7. 查看状态

    mysql命令登录后,通过status命令查询版本信息

    mysql -u root -p 
    //输入密码,登录成功后
    mysql> status;
    

    mysql命令登录后,通过version()查询版本信息

    mysql -u root -p 
    //输入密码,登录成功后
    mysql> select version();
    

    8. 临时关闭防火墙

    停止firewall

    systemctl stop firewalld.service
    

    9. 常用命令

    systemctl start mysqld   #启动mysqld
    
    systemctl stop mysqld   #停止mysqld
    
    systemctl restart mysqld #重启mysqld
    
    systemctl enable mysqld #设置开机启动
    
    systemctl status mysqld #查看 MySQL Server 状态
    

    10. 用户设置

    • 创建一个 普通用户 xx ,密码是xxx
    CREATE USER 'xx'@'localhost' IDENTIFIED BY 'xxx';
    

    此处 'localhost' 是指该用户只能在本地登录,不能在另外一台机器上远程登录。
    如果想远程登录的话,将 "localhost"改为"%" ,表示在任何一台电脑上都可以登录。
    也可以指定某台机器可以远程登录。

    • 给这个用户授予 SELECT,INSERT,UPDATE,DELETE 的远程访问的权限,这个账号一般用于提供给实施的系统访问
    GRANT SELECT,INSERT,UPDATE,DELETE ON . TO 'xx'@'%';
    
    • 创建一个 管理员用户 admin 账号 ,密码是 123456
    CREATE USER 'admin'@'%' IDENTIFIED BY 'xxx';
    
    • 给这个用户授予所有的远程访问的权限。这个用户主要用于管理整个数据库、备份、还原等操作。
    GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%';
    
    • 使授权立刻生效
    flush privileges;
    

    11. 默认配置文件路径

    配置文件: /etc/my.cnf
    日志文件: /var/log//var/log/mysqld.log
    服务启动脚本: /usr/lib/systemd/system/mysqld.service
    socket文件: /var/run/mysqld/mysqld.pid

    相关文章

      网友评论

          本文标题:云服务器安装MySQL-5.7.33版本

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