zoukankan      html  css  js  c++  java
  • Linux安装MySQL5.7

    一.检查系统

    cat /etc/redhat-release
    

    是否安装mysql

    systemctl status mysqld.service
    

    二.安装MySQL

    1.下载MySQL官方的Yum Repository

    wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
    

    2. 安装Yum Repository

    yum -y install mysql57-community-release-el7-10.noarch.rpm
    

    3. 在线安装MySQL

    yum -y install mysql-community-server
    

    报错

    解决办法: 先执行 yum module disable mysql,然后再执行 yum -y install mysql-community-server

    4、卸载Yum Repository

    由于每次 yum 操作都会自动更新,需要把这个卸载掉

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

    三.配置MySQL

    1. 查看MySQL状态

    systemctl status mysqld.service
    

    2. 启动MySQL

    systemctl start mysqld.service
    

    3. 登录MySQL

    此时MySQL已经开始正常运行,不过想要登录MySQL还得先找出此时root用户的密码

    grep "password" /var/log/mysqld.log
    


    临时密码是 Ej>!tp029FGv

    修改root 密码

    mysql -u root –p
    

    必须修改默认密码之后才能操作数据库,密码设置必须包含大小写字母、数字和特殊字符,不然修改密码失败

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'MySQL%57';  // MySQL%57处填新密码
    

    四.开启MySQL远程访问

    执行以下命令开启远程访问限制(注意:下面命令开启的是%代表所有用户,如要开启某一个IP,用IP代替%

    grant all privileges on *.* to 'root'@'%' identified by 'MySQL%57' with grant option;
    

    执行刷新命令

    flush privileges;
    

    退出

    exit
    

    四.在防火墙中添加3306端口

    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    

    五.修改配置文件

    登录MySQL,

    mysql -u root -p // 输入自己设置的密码
    

    输入status,发现服务器的字符编码是latin1

    需要将字符编码修改为utf8

    修改配置文件my.cnf

    查找my.cnf所在目录

    记得先退出mysql exit

    find / -name my.cnf
    

    使用vim打开my.conf文件,新增以下四行代码

    [client]
    default-character-set=utf8
    character-set-server=utf8
    collation-server=utf8_general_ci
    

    :wq保存

    保存my.cnf后,重启MySQL

    登录MySQL,查看status,可以看到字符集编码已经成功修改为utf8

    六.远程测试

    阿里云ECS服务器需要添加安全组规则,开启3306端口才可以远程连接MySQL

    在本地Windows下远程连接MySQL,连接成功


    使用Navicat测试,连接成功

    报错:

    1045错误

    本地Navicat连接远程服务器的数据库出现1045-Access denied for user ‘root’@‘localhost’(using password:YES) 问题。并非一定是密码错误问题,

    也可能是数据库MySQL表的用户权限问题。记录一下踩坑过程,以后方便配置。

    解决:

    1.mysql -u root -p  // 登录服务器
    2.update user set host = '%' where user ='root'; // 允许远程机器连接
    

    又出现一个错误: ERROR 1046 (3D000): No database selected //意思是说没有选种数据库.

    3.create database;   // 首先要建立数据库,在将表放入数据库中:
    // 修改权限
    4.GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;//****是你数据库的
    5.flush privileges;  //立即刷新权限
    


  • 相关阅读:
    【产品经理】原型设计工具
    Android进阶推荐书籍
    EventBus学习笔记(一)
    Android APT
    注解学习笔记(二)
    Android开发的小经验总结(上)
    Android开发的小经验总结(下)
    Windows环境下Android Studio v1.0安装教程
    Android-Universal-Image-Loader 图片异步加载类库的使用
    Android 官方推荐 : DialogFragment 创建对话框
  • 原文地址:https://www.cnblogs.com/cl1998/p/14555611.html
Copyright © 2011-2022 走看看