一.安装MysqL

1.配置YUM源

在MysqL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/

# 下载MysqL源安装包
shell> wget http://dev.MysqL.com/get/MysqL57-community-release-el7-8.noarch.rpm //get之后就是图片上的后缀
# 安装MysqL源
shell> yum localinstall MysqL57-community-release-el7-8.noarch.rpm//后面这个是文件名

检查MysqL源是否安装成功

yum repolist enabled | grep "MysqL.*-community.*"


看到上图所示表示安装成功

2.安装MysqL

yum install MysqL-community-server

接下来就要等待一段时间了

3.启动MysqL服务

systemctl start MysqLd

4.查看MysqL的启动状态

systemctl status MysqLd

反应如下

MysqLd.service - MysqL Server
   Loaded: loaded (/usr/lib/systemd/system/MysqLd.service; enabled)
   Active: active (running) since Sat 2017-07-01 13:12:06 CST; 14min ago
     Docs: man:MysqLd(8)
           http://dev.MysqL.com/doc/refman/en/using-systemd.html
  Process: 17903 ExecStart=/usr/sbin/MysqLd --daemonize --pid-file=/var/run/MysqLd/MysqLd.pid $MysqLD_OPTS (code=exited,status=0/SUCCESS)
  Process: 17885 ExecStartPre=/usr/bin/MysqLd_pre_systemd (code=exited,status=0/SUCCESS)
 Main PID: 17907 (MysqLd)
   CGroup: /system.slice/MysqLd.service
           `-17907 /usr/sbin/MysqLd --daemonize --pid-file=/var/run/MysqLd/MysqLd.pid

Jul 01 13:12:06 VM_94_49_centos systemd[1]: Starting MysqL Server...
Jul 01 13:12:06 VM_94_49_centos systemd[1]: Started MysqL Server.

5.设置开机自动启动

systemctl enable MysqLd
systemctl daemon-reload

二.对MysqL的一些配置

1.修改MysqL默认密码

安装成功后的MysqL后,默认用户名为root
而默认密码需要去/var/log/MysqLd.log去查看
可以用这个命令去查看

vim /var/log/MysqLd.log
2017-07-01T04:54:06.926059Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-07-01T04:54:07.440020Z 0 [Warning] InnoDB: New log files created,LSN=45790
2017-07-01T04:54:07.505909Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-07-01T04:54:07.565856Z 0 [Warning] No existing UUID has been found,so we assume that this is the first time that this server has been started. Generating a new UUID: 507d18ba-5e19-11e7-b797-525400b871c7.
2017-07-01T04:54:07.567446Z 0 [Warning] Gtid table is not ready to be used. Table 'MysqL.gtid_executed' cannot be opened.
2017-07-01T04:54:07.568083Z 1 [Note] A temporary password is generated for root@localhost: Lr+/fXrhW8xC//默认密码

也可以这样

grep 'temporary password' /var/log/MysqLd.log

接下来我们就登录MysqL吧

第一次登录MysqL的时候,它要求你必须要修改密码,才能进行其他的操作,所以我们要乖乖的修改密码

MysqL5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误,如下图所示:

修改密码可以使用这个

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Tt471912619!';

也可以使用这个

set password for 'root'@'localhost'=password('Tt471912619!');

通常我们在学习过程中,设置的密码都很简单,方便记忆,所以我们下面就要说说怎么样修改密码策略

2.修改MysqL默认密码策略

(1).查看MysqL密码策略

show variables like '%password%';

(2).特殊值的说明

validate_password_dictionary_file:密码策略文件,策略为STRONG才需要

validate_password_length:密码最少长度 

validate_password_mixed_case_count:大小写字符长度,至少1个

validate_password_number_count :数字至少1个  validate_password_special_char_count:特殊字符至少1validate_password_policy:密码安全策略,默认MEDIUM策略
策略 检查规则
0 or LOW Length
1 or MEDIUM Length; numeric,lowercase/uppercase,and special characters
2 or STRONG Length; numeric,and special characters; dictionary file

(3).修改策略

set global 策略名=策略值;


如此这般我就把密码策略修改成如下情况了

于是我们就像上面一样修改密码即可了,这次只需要符合长度大于8的数字就行了

3.配置默认编码为utf8

修改/etc/my.cnf配置文件,在相应位置添加编码配置如下

[client]
default-character-set=utf8
[MysqLd]
character_set_server=utf8
init_connect='SET NAMES utf8'

重新启动MysqL服务使配置生效

systemctl restart MysqLd

注意:你如果在MySQL命令使用
set来设置编码的话,再用这个查询出来也是这样的,不过这是一个假象,等你下次重新登录数据库的时候,在查询编码发现又变回来了,所以还是乖乖去配置文件中去修改吧

三.MysqL的远程连接

首先要赋予root用户所有权限

grant all privileges on *.* to 'root' @'%' identified by 'T471912619';

刷新权限

flush privileges;

当然配置完这些有可能还是无法远程连接,那么可能就是防火墙的问题了
对于CentOS 7 来说防火墙是由firewalld来管理
你可以使用如下命令直接关闭防火墙之后就可以连接了

systemctl stop firewalld

或者使用开启端口命令

firewall-cmd --zone=public --add-port=端口号/tcp --permanent
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=端口号/tcp
删除
firewall-cmd --zone= public --remove-port=端口号/tcp --permanent

如果你使用如下命令会报错误的

service iptables save 
Failed to restart iptables.service: Unit iptables.service Failed to load: No such file or directory.

查看iptables的状态

systemctl status iptables
iptables.service
   Loaded: not-found (Reason: No such file or directory)
   Active: inactive (dead)//休眠,并未启动

CentOS 7上安装MySQL的更多相关文章

  1. 关于h5中的fetch方法解读(小结)

    这篇文章主要介绍了关于h5中的fetch方法解读(小结),fetch身为H5中的一个新对象,他的诞生,是为了取代ajax的存在而出现,有兴趣的可以了解一下

  2. macos – 运行brew命令充满了’同意Xcode / iOS许可证需要管理员权限,请通过sudo以root身份重新运行.’

    所以我跑了:如果滚动到底部,可以输入“同意”,然后就可以了.

  3. 如何在iOS 10上设置日志级别?

    换句话说,如果我在iOS上运行的代码就像这样:那么在Console.app中看到记录的消息需要做些什么呢?

  4. 从iOS应用程序发送帖子到PHP脚本不工作…简单的解决方案就像

    我之前已经做了好几次了但是由于某些原因我无法通过这个帖子…我尝试了设置为_POST且没有的变量的PHP脚本……当它们未设置为发布时它工作精细.这是我的iOS代码:这里是PHP的一大块,POST变量不在正确的位置?我想这对于更有经验的开发人员来说是一个相当简单的答案,感谢您的帮助!解决方法$_POST是一个数组,而不是一个函数.您需要使用方括号来访问数组索引:

  5. 为什么Xcode 8(iOS 10)在控制台中打印[LogMessageLogging]

    为什么Xcode8打印[LogMessageLogging]在控制台中,当我调用地图视图时?任何人都可以提出一些建议吗?解决方法PrivacyTheunifiedloggingsystemconsidersdynamicstringsandcomplexdynamicobjectstobeprivate,anddoesnotcollectthemautomatically.Toensuretheprivacyofusers,itisrecommendedthatlogmessagesconsiststri

  6. ios – 仅适用于iPad的Settings.bundle?

    我有一种情况需要通过设置应用程序为我的应用程序提供一个设置.我的应用程序是通用的,但这个特殊的设置只在iPad上有意义,所以我只希望我的应用程序显示在iPad上的设置中.这可能吗?

  7. ios – 在Swift 4中为os_log传递可变参数

    我正在尝试为Swift4/iOS11中的os_log编写一个方便的包装器,但是我已经遇到了传递可变参数的艰难战斗.基本上,我想编写一个如下所示的函数.不幸的是,我似乎无法弄清楚传递参数的神奇语法,并且在CVararg讨论的泥潭中有点迷失.(…这让我想念Python的splatting语法)解决方法我还没有找到解决方案,所以这个愚蠢的黑客:

  8. xcode – osx上的config.log是什么?它在哪里?

    任何人都可以解释’configure’是什么和做什么,一般可以找到config.log文件?

  9. ios – Swift 4设置捆绑,获取默认值

    我创建了一个包含大约8个切换开关的设置包.我想要做的是从设置包中获取默认值.目前我现在有这两种方法:我在viewDidLoad中调用这些方法然而,这并没有得到我的默认值.如果我关闭应用程序,打开设置,调整设置并重新打开应用程序,这会产生正确的值.有没有获得默认设置?

  10. api – HTTPS请求仅在iOS,Ionic 2上失败

    我有一个Ionic2应用程序,它调用SpringBootAPI将推送通知发送到其他设备.API使用HTTPS配置.APIPOST请求适用于除iOS之外的所有内容.我在服务器上的SSL证书是自签名的(可能就是这样吗?

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部