记录下在阿里云linux上安装与配置Mysql

环境:阿里云ECS服务器,系统为centos7.2

用户:root

参考博客: https://blog.csdn.net/kunzai6/article/details/81938613 师兄的哈哈哈,还讲了很详细的新建用户和权限设置

https://blog.csdn.net/qq_39005790/article/details/80017186

删除原来的数据库

centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会直接覆盖掉这个数据库,当然也可以手动删除一下:

[root@localhost ~]# rpm -qa|grep mariadb  // 查询出来已安装的mariadb
[root@localhost ~]# rpm -e --nodeps 文件名  // 卸载mariadb,文件名为上述命令查询出来的文件

然后现在开始将当前目录切换到root也就是: cd ~

下载与安装MySQL:

这里采用Yum管理好了各种rpm包的依赖,能够从指定的服务器自动下载RPM包并且安装,所以在安装完成后必须要卸掉,否则会自动更新。

1.安装MySQL官方的yum repository

[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

2.下载rpm包

[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm

3.安装MySQL服务

[root@localhost ~]# yum -y install mysql-community-server

最后会出现个complete!

4.启动MySQL服务

[root@localhost ~]# systemctl start  mysqld.service

看到类似下面的界面,或者以Starting MySqL server.. started MysqlServer..结尾的就成功启动了

记录下在阿里云linux上安装与配置Mysql

还有几个关于MySQL常用的命令:

重启:systemctl restart mysqld.service

停止:systemctl stop mysqld.service

查看状态:systemctl status mysqld.service

还可以配置MySQL的开机启动:

[root@woitumi-128 ~]# systemctl enable mysqld

[root@woitumi-128 ~]# systemctl daemon-reload   刚刚配置的服务需要让systemctl能识别,就必须刷新配置

关于登录MySQL:

登录命令:

[root@localhost ~]# mysql -u root -p

意思就是用root用户登录,然后准备输入密码。

第一次启动MySQL后,就会有临时密码,这个默认的初始密码在/var/log/mysqld.log文件中,我们可以用这个命令来查看:

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

记录下在阿里云linux上安装与配置Mysql

可是不知道是我输错密码还是不能复制粘贴,一直显示错误:

记录下在阿里云linux上安装与配置Mysql

(好吧后面看看这个代码应该是 mysql -u root -p才对,可能这样输入命令就不会有错吧……)

然后我们还可以先跳过密码验证登录进MySQL:

停止服务:

systemctl stop mysqld.service

修改mMySQL的配置文件:

vi /etc/my.cnf

在最后加上配置:

skip-grant-tables

然后再启动服务:

systemctl start mysqld.service

然后这时就可以跳过密码来登录mysql:

mysql -u root

记录下在阿里云linux上安装与配置Mysql

然后是修改下密码:(就看别人的例子是这样的)

mysql> use mysql;
Database changed
mysql> update mysql.user set authentication_string=password('4008') where user='root' ;
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

然后exit退出mysql,重新在刚刚那个配置文件中去掉skip-grant-tables,然后重启MySQL。

然后就可以用新密码登录了:

记录下在阿里云linux上安装与配置Mysql

sql报错

但这个时候,我试了一下一个简单的sql语句:

记录下在阿里云linux上安装与配置Mysql

what???我不是刚刚才设完密码吗??

然后百度了下。说这个情况还要加个这样的改密码的语句:

SET PASSWORD = PASSWORD('密码');

但这个命令又出现了这样的问题:

记录下在阿里云linux上安装与配置Mysql

额百度后知道原来是密码等级太简单,如果你坚持要这样的密码, 要改变密码等级:

登录数据库后,输入

mysql> set global validate_password_policy=0;  //改变密码等级

mysql> set global validate_password_length=4;   //改变密码最小长度

然后再输入刚刚的命令:

SET PASSWORD = PASSWORD('密码');

然后再用 show databases;就没有报错了

配置远程登录:

MySQL默认root用户只能本地登录,如果要远程连接,要简单设置下,这里直接用root来远程登录不添加其他角色。

使用命令:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '4008' WITH GRANT OPTION;

.*.的意思是所有库的所有表;To后面跟的是用户名;@后面跟的是ip地址,%代表所有ip地址,identified by后面的是密码。

然后再:

mysql> flush privileges;

注意:

需要注意mysql的配置文件中的bindaddress 的参数和skip-networking 配置

bindaddress : 设定哪些ip地址被配置,使得mysql服务器只回应哪些ip地址的请求),最好注释掉该参数或设置成为127.0.0.1以外的值

skip-networking : 如果设置了该参数项,将导致所有TCP/IP端口没有被监听,也就是说出了本机,其他客户端都无法用网络连接到本mysql服务器,所以应该注释掉该参数

添加3306端口:

命令:

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

结果说没有运行防火墙:

记录下在阿里云linux上安装与配置Mysql

那就先开防火墙咯:

systemctl status firewalld  查看防火墙状态

systemctl start firewalld  打开防火墙

记录下在阿里云linux上安装与配置Mysql

然后再输入那个开放3306端口的命令就行了

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

firewall-cmd --reload  重启防火墙

最后的收尾:

1.我们刚开始说要写在yum的repository,用这个命令就行:

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

2.MySQL设一下utf8:

打开/etc/my.cnf也就是数据库的配置文件,然后在底部复制粘贴:

[mysqld]

character_set_server=utf8
init_connect='SET NAMES utf8'

采用navicat新建数据库时,需要将编码方式设置为,字符集:utf8 — UTF-8 Unicode ,排序规则:utf8_general_ci

3.阿里云的服务器中的安全组加入mysql连接的规则。这个很重要不然远程无法连接上。

4.配置文件的说明:

/etc/my.cnf 这是mysql的主配置文件
/var/lib/mysql mysql数据库的数据库文件存放位置
/var/log mysql数据库的日志输出存放位置

转自于:https://www.cnblogs.com/wangshen31/p/9556804.html

Original: https://www.cnblogs.com/incognitor/p/10780153.html
Author: 無名之徒
Title: 记录下在阿里云linux上安装与配置Mysql

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/622190/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • SpringBoot整合WebService(实用版)

    SpringBoot整合WebService 简介 WebService就是一种跨编程语言和跨操作系统平台的远程调用技术 此处就不赘述WebService相关概念和原理了,可以参考…

    数据库 2023年6月16日
    0103
  • 高并发组件了解

    消息队列 A服务和多个服务耦合,内部维护对多个服务发送数据的接口,那么这些接口如果有的挂了,有的不需要了,那么还得修改A内部的代码,如果使用MQ,A发送消息就好,不必考虑那么多事情…

    数据库 2023年6月16日
    067
  • zabbix监控配置流程

    1.0 zabbix监控配置流程详细 管理角度: 开发 由开发人员提供监控指标来监控 运营 让其找开发要监控指标 运维 直接加 配置角度: 创建主机 创建主机组并加入主机 添加监控…

    数据库 2023年6月14日
    0100
  • 9.回文数

    给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 例如,121 是回文,而…

    数据库 2023年6月16日
    068
  • [LeetCode]7. 整数反转

    给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1: 输入: 123输出: 321示例 2: 输入: -123输出: -321示例 3: 输入: 1…

    数据库 2023年6月9日
    082
  • Spark知识点总结

    Spark基础 Spark优势 优秀的数据模型与丰富计算抽象 Spark 借鉴了 MapReduce 思想发展而来,保留了其分布式并行计算的优点并改进了其明显的缺陷。 让中间数据存…

    数据库 2023年6月6日
    078
  • Java中AES加密和解密的方法分享

    转自: http://www.java265.com/JavaJingYan/202206/16559759223818.html 下文笔者讲述java代码实现的AES加密和解密的…

    数据库 2023年6月11日
    095
  • oracle 怎么查看用户对应的表空间

    oracle 怎么查看用户对应的表空间? 查询用户: 查看数据库里面所有用户,前提是你是有 dba 权限的帐号,如 sys,system: select * from dba_us…

    数据库 2023年6月14日
    078
  • IO模型

    Unix IO模型 对于一个套接字上的输入操作,分为两步: 等待数据准备好(从网络中到达,到内核缓冲区) 将数据从内核缓冲区复制到应用进程缓冲区 I/O模型主要为以下五种: 阻塞I…

    数据库 2023年6月11日
    082
  • MySQL完整版详解

    一、数据库的操作 1.创建数据库 若在可视化软件上创建数据库,参考如下图 如果要创建的数据库不存在,则创建成功 create database if not exists west…

    数据库 2023年6月16日
    066
  • Linux远程终端连接工具:SecureCRT

    SecureCRT SecureCRT是一款支持 SSH2、SSH1、Telnet、Telnet/SSH、Relogin、Serial、TAPI、RAW 等协议的终端仿真程序 Se…

    数据库 2023年6月11日
    0106
  • day43-反射02

    Java反射02 2.Class类 2.1基本介绍 Class类也是类,因此也继承Object类 Class类对象不是new出来的,而是系统创建的 对于某个类的Class类对象,在…

    数据库 2023年6月11日
    085
  • 日月既往,不可复追,暑期实习结束!

    在从上海回南京的高铁上码下了这篇文章,心中感慨万千, 两个月弹指一挥间,初来时还略有不适,突然要走了竟然还生出一些留念,所谓 “天可补,海可填,南山可移,日月既往,不可…

    数据库 2023年6月6日
    0157
  • VMWare 12 Mac 10.11 XCode 7.3 Ipad真机调试重要问题总结

    XCode 7.3可以不需要每年缴费而直接调试IOS应用,测试如下: 1,安装Mac 10.11在VMWare12上,网上有很多例子。注意: 1.1,虚拟机设置中USB为USB2….

    数据库 2023年6月14日
    095
  • 深度干货!一篇Paper带您读懂HTAP | StoneDB学术分享会第①期

    在最新一届国际数据库顶级会议 ACM SIGMOD 2022 上,来自清华大学的李国良和张超两位老师发表了一篇论文:《HTAP Database: What is New and …

    数据库 2023年6月11日
    086
  • SQL Server解惑——为什么你拼接的SQL语句换行符失效了?

    –========================================================================================…

    数据库 2023年6月11日
    084
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球