一、 安装

  1. 查看是否已安装

    # 查看MySQL版本
    mysql --version # 查看MySQL相关文件
    whereis mysql

  2. 若已安装,卸载方法如下

    # 卸载MySQL
    yum remove mysql
  3. 安装

    1. 查看yum源可安装的MySQL版本

      # 查看可安装的MySQL版本
      yum repolist all | grep mysql

    2. 一个都没有。。。因为某些原因,CentOS默认的yum源不提供MySQL了,所以要去官网获取适合自己系统版本的MySQL版本的源 https://dev.mysql.com/downloads/repo/yum/

      #查看Centos版本的命令
      cat /etc/issue

    3. 开始动手

      # 添加MySQL5.7的源
      wget http://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
      sudo yum localinstall mysql80-community-release-el7-5.noarch.rpm -y

      # 再次查看yum源MySQL版本
      yum repolist enabled | grep mysql

      # 安装MySQL
      sudo yum install mysql-server -y # 查看安装的版本
      mysql --version

    4. 启动MySQL数据库

      # 启动MySQL
      sudo service mysqld start
      # 重启MySQL
      sudo service mysqld restart
      # 查看MySQL状态
      sudo service mysqld status
      # 停止MySQL
      sudo service mysqld stop

二、 初始密码、重置密码、修改密码

  1. 获取初始密码

    # 获取初始密码
    sudo grep 'temporary password' /var/log/mysqld.log

  2. 修改密码

    # 用初始密码登录
    mysql -uroot -p # 重置密码(密码要满足要求,就是要复杂一点)
    # 如果想要简单的密码,要修改密码策略 参考 https://www.cnblogs.com/liuhedong/p/11131693.html
    ALTER USER 'root'@'localhost' IDENTIFIED BY '密码'; ## 我修改了长度和策略(策略为0,长度限制最新6位)
    Set Persist validate_password.policy = 0;
    Set Persist validate_password.length = 6;
  3. 忘记密码重置密码

    # 查询配置文件位置
    mysql --help|grep 'my.cnf'

    # 修改配置文件 在[mysqld]下添加参数skip-grant-tables
    vim /etc/my.cnf
    # 重启MySQL
    sudo service mysqld restart

    # 无密码登录
    mysql -u root
    # 密码设为空(试过了,不能修改密码,只能为空)
    use mysql;
    update user set authentication_string = '' where user = 'root';
    # 修改配置文件 删除参数skip-grant-tables
    vim /etc/my.cnf
    # 重启MySQL
    sudo service mysqld restart
    # 无密码登录
    mysql -u root
    # 修改密码
    ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';

三、修改host实现远程连接

  1. 背景

    • 数据库装好了

    • 密码也整好了

    • 端口也配置好了

    • 云服务器端口也开放了

navicat还是连不上远程服务器的数据库!!!!

  1. 原因

    用户Host属性为localhost,就只能服务器本地连接,所以连不上

  2. 解决办法

    将Host属性改为通配符‘%’,远端就可以了

    # 登录MySQL
    mysql -uroot -p # 修改当前数据库
    use mysql; # 查看用户的Host属性
    select User,Host from user; # 修改用户属性
    update user set host = '%' where user = 'root'; # 刷新权限
    flush privileges;

四、 添加新用户并授权

参考 https://www.jianshu.com/p/d7b9c468f20d

  1. 背景

    大多数情况下,为了保证数据安全,我们的数据库操作都不是用root用户,某些用户只能读,某些用户可写可读,某些用户只能操作某一个数据库而不是整个MySQL数据库

  2. 解决办法

# 新增用户(密码可以为空)
CREATE USER '用户名'@'登录权限' IDENTIFIED BY '密码';

# 授权
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'登录权限'

阿里云、腾讯云、CentOS下的MySQL的安装与配置详解的更多相关文章

  1. centos下apache+mysql+php安装及配置

    今天难得休闲,自从加盟当前公司以来好像就基本没有写过博客了.难得闲下来和前同事聊天,他们几个人合伙买了VPS在用.这对我们搞WEB开发的童鞋来说是非常重要的,我来这家公司有许久了,但是竟然到现在连一台 ...

  2. CentOS 6.3下Samba服务器的安装与配置详解

    一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的 ...

  3. CentOS下LVS DR模式负载均衡配置详解

    一安装LVS准备: 1.准备4台Centos 6.2 x86_64 注:本实验关闭 SELinux和IPtables防火墙. 管理IP地址 角色 备注 192.168.1.101 LVS主调度器(Ma ...

  4. Win下 MySQL数据库安装与配置详解

    第一步 从官网下载安装包 (本次只写安装版的32位的mysql) 1. https://www.mysql.com/downloads/ 下载的官网地址 一直滑到最下面 然后点第一个 然后选第一个 这 ...

  5. CentOS下Samba文件服务器的安装与配置

    CentOS下Samba文件服务器的安装与配置 http://blog.csdn.net/limingzhong198/article/details/22064801 一.安装配置 1. 安装sam ...

  6. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  7. Windows下Nginx Virtual Host多站点配置详解

    Windows下Nginx Virtual Host多站点配置详解 此教程适用于Windows系统已经配置好Nginx+Php+Mysql环境的同学. 如果您还未搭建WNMP环境,请查看 window ...

  8. Centos下MongoDB数据库的安装以及配置开机自启动(三)

    最近写了一个用node来操作MongoDB完成增.删.改.查.排序.分页功能的示例,并且已经放在了服务器上地址:http://39.105.32.180:3333. 在服务器上完全可以用yum来安装管 ...

  9. CentOS 下搭建部署独立SVN服务器全程详解(5.5)

    SVN服务器有2种运行方式: 1.独立服务器(例如:svn://xxx.com/xxx): 2.借助apache   (例如:http://svn.xxx.com/xxx): 为了不依赖apache, ...

随机推荐

  1. 聊聊第一个开源项目(内网穿透) - CProxy

    文章首发:聊聊第一个开源项目 - CProxy 作者:会玩code 初衷 最近在学C++,想写个项目练练手.对网络比较感兴趣,之前使用过ngrok(GO版本的内网穿透项目),看了部分源码,想把自己的一 ...

  2. Qt:输出为CSV文件时汉字乱码

    参考 (18条消息) QT5写csv文件,文件打开后中文显示乱码的问题解决_yanzi150207348的博客-CSDN博客 解决方法 1.在文件开头写一段: #if _MSC_VER >= 1 ...

  3. JZ-005-用两个栈实现队列

    用两个栈实现队列 题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 题目链接: 用两个栈实现队列 代码 import java.util.Stack; / ...

  4. python+selenium+pycharm使用

    上一章节讲了安装python及selenium,该章节讲解下使用pycharm编辑器进行代码编写 下载地址:http://www.jetbrains.com/pycharm/download/#sec ...

  5. 自动化安装操作系统(Centos7+PXE+Cobbler+kickstart)

    一.简介 PXE称作是一种引导方式而不是安装方式似乎更加准确,PXE(Pre-boot Execution Environment)是由Intel设计的协议,它可以使计算机通过网络启动,但是有一个前提 ...

  6. linux定时任务 - at定时任务

    at命令是一次性定时计划任务,at的守护进程atd会以后台模式运行,检查作业队列来运行作业.atd守护进程会检查系统上的一个特殊目录来获取at命令的提交的作业,默认情况下,atd守护进程每60秒检查一 ...

  7. 对象中的apply&call

    显式绑定法 apply/call(); 通过显式绑定法可以使用另一个对象中的方法 apply/call()都是JS预定义的方法, 他们都可以用于将一个对象作为参数调用对象方法 FOR example ...

  8. 分布式session的几种解决方案

    现在很多商城,都会要求用户先去登录,登录之后再往购物车中添加商品,这样用户.购物车.商品,三个对象之间就有了绑定关系. 而针对我最开始说的那种情况,其实就是基于session做的,客户端往购物车中添加 ...

  9. kubernetes内yaml格式

    yaml格式的pod定义文件完整内容: apiVersion: v1 #必选,版本号,例如v1 可通过 kubectl api-versions 获取 kind: Pod #必选,Pod metada ...

  10. python中字符串与列表之间的相互转换

    1.字符串>列表:split() a = 'my first python' b = a.split(" ") print(b)输出: 2.列表>字符串:join() ...