在本文中,我们将带你了解CentOS7安装MySQL在这篇文章中,我们将为您详细介绍CentOS7安装MySQL的方方面面,并解答centos7安装MySQl5.7常见的疑惑,同时我们还将给您一些技巧
在本文中,我们将带你了解CentOS 7 安装 MySQL在这篇文章中,我们将为您详细介绍CentOS 7 安装 MySQL的方方面面,并解答centos7安装MySQl5.7常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的Can''t connect to local MySQL server through socket ''/opt/lampp/var/mysql/mysql.sock'' (2)、Can''t connect to local MySQL server through socket ''/var/lib/mysql/mysql.sock''、CentOS 6.2 安装 MySQL 5.7.28的教程(mysql 笔记)、centos 7 yum 安装 mysql glib 安装 mysql。
本文目录一览:- CentOS 7 安装 MySQL(centos7安装MySQl5.7)
- Can''t connect to local MySQL server through socket ''/opt/lampp/var/mysql/mysql.sock'' (2)
- Can''t connect to local MySQL server through socket ''/var/lib/mysql/mysql.sock''
- CentOS 6.2 安装 MySQL 5.7.28的教程(mysql 笔记)
- centos 7 yum 安装 mysql glib 安装 mysql
CentOS 7 安装 MySQL(centos7安装MySQl5.7)
CentOS 7 安装 MySQL
CentOS 7.1 (64-bit system)
MysqL 5.6.24
依赖
MysqL 依赖 libaio,所以先要安装 libaio
yumsearchlibaio#检索相关信息 yuminstalllibaio#安装依赖包
成功安装,提示如下:
[root@bogon/]#yuminstalllibaio 已加载插件:fastestmirrorLoadingmirrorspeedsfromcachedhostfile *base:mirrors.yun-idc.com *extras:mirrors.163.com *updates:mirrors.163.com 软件包libaio-0.3.109-12.el7.x86_64已安装并且是最新版本 无须任何处理
检查 MysqL 是否已安装
yumlistinstalled|grepMysqL
如果有,就先全部卸载,命令如下:
yum-yremoveMysqL-libs.x86_64
若有多个依赖文件则依次卸载。当结果显示为 Complete!即卸载完毕。
下载
下载 MysqL Yum Repository
地址为http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
执行
wgethttp://dev.MysqL.com/get/MysqL-community-release-el7-5.noarch.rpm
如果提示
-bash: wget: 未找到命令
,请先执行yum install wget
安装 wget
安装
添加 MysqL Yum Repository
添加 MysqL Yum Repository 到你的系统 repository 列表中,执行
yumlocalinstallMysqL-community-release-el7-5.noarch.rpm
显示
[root@bogonsoftware]#yumlocalinstallMysqL-community-release-el7-5.noarch.rpm 已加载插件:fastestmirror 正在检查MysqL-community-release-el7-5.noarch.rpm:MysqL-community-release-el7-5.noarch MysqL-community-release-el7-5.noarch.rpm将被安装 正在解决依赖关系-->正在检查事务--->软件包MysqL-community-release.noarch.0.el7-5将被安装-->解决依赖关系完成 依赖关系解决 ================================================================================Package架构版本源大小 ================================================================================ 正在安装: MysqL-community-release noarchel7-5/MysqL-community-release-el7-5.noarch4.3k 事务概要 ================================================================================ 安装1软件包 总计:4.3k 安装大小:4.3kIsthisok[y/d/N]
提示是否 OK ,输入 y
Isthisok[y/d/N]:y Downloadingpackages: Runningtransactioncheck Runningtransactiontest Transactiontestsucceeded Runningtransaction 正在安装:MysqL-community-release-el7-5.noarch1/1 验证中:MysqL-community-release-el7-5.noarch1/1 已安装: MysqL-community-release.noarch0:el7-5 完毕!
提示“完成!”,则说明 源添加成功。
验证下是否添加成功
yumrepolistenabled|grep"MysqL.*-community.*"
可以看到下面内:
[root@bogonsoftware]#yumrepolistenabled|grep"MysqL.*-community.*" mysql-connectors-community/x86_64MysqLConnectorsCommunity1 MysqL-tools-community/x86_64MysqltoolsCommunity1 MysqL56-community/x86_64MysqL5.6CommunityServer13
选择要启用 MysqL 版本
查看 MysqL 版本,执行
yumrepolistall|grepMysqL
可以看到 5.5, 5.7 版本是默认禁用的,因为现在最新的稳定版是 5.6
[root@bogonsoftware]#yumrepolistall|grepMysqL mysql-connectors-community/x86_64MysqLConnectorsCommunity启用:14 mysql-connectors-community-sourceMysqLConnectorsCommunity-Sourc禁用 MysqL-tools-community/x86_64MysqltoolsCommunity启用:17 MysqL-tools-community-sourceMysqltoolsCommunity-Source禁用 MysqL55-community/x86_64MysqL5.5CommunityServer禁用 MysqL55-community-sourceMysqL5.5CommunityServer-Sourc禁用 MysqL56-community/x86_64MysqL5.6CommunityServer启用:139 MysqL56-community-sourceMysqL5.6CommunityServer-Sourc禁用 MysqL57-community-dmr/x86_64MysqL5.7CommunityServerDevelop禁用 MysqL57-community-dmr-sourceMysqL5.7CommunityServerDevelop禁用
可以通过类似下面的语句来启动某些版本
yum-config-manager--disableMysqL56-community yum-config-manager--enableMysqL57-community-dmr
或者通过修改/etc/yum.repos.d/MysqL-community.repo
文件
#EnabletouseMysqL5.6[MysqL56-community]name=MysqL5.6CommunityServerbaseurl=http://repo.MysqL.com/yum/mysql-5.6-community/el/7/$basearch/enabled=1gpgcheck=1gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL
其中enabled=0
是指禁用,enabled=1
指启用。
注意: 任何时候,只能启用一个版本。
执行
yumrepolistenabled|grepMysqL
查看当前的启动的 MysqL 版本
[root@bogonsoftware]#yumrepolistenabled|grepMysqL mysql-connectors-community/x86_64MysqLConnectorsCommunity14 MysqL-tools-community/x86_64MysqltoolsCommunity17 MysqL56-community/x86_64MysqL5.6CommunityServer139
本例,我们启用的是 5.6 版本。
通过 Yum 来安装 MysqL
执行
yuminstallMysqL-community-server
Yum 会自动处理 MysqL 与其他组件的依赖关系:
[root@bogonsoftware]#yuminstallMysqL-community-server 已加载插件:fastestmirror Loadingmirrorspeedsfromcachedhostfile *base:mirrors.yun-idc.com *extras:mirrors.163.com *updates:mirrors.163.com 正在解决依赖关系-->正在检查事务--->软件包MysqL-community-server.x86_64.0.5.6.24-3.el7将被安装-->正在处理依赖关系MysqL-community-common(x86-64)=5.6.24-3.el7,它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系MysqL-community-client(x86-64)=5.6.24-3.el7,它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(warnings),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(strict),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(if),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(Sys::Hostname),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(POSIX),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(Getopt::Long),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(File::Temp),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(File::Spec),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(File::Path),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(File::copy),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(File::Basename),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(Fcntl),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(Data::Dumper),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(DBI),它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系net-tools,它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在处理依赖关系/usr/bin/perl,它被软件包MysqL-community-server-5.6.24-3.el7.x86_64需要-->正在检查事务--->软件包MysqL-community-client.x86_64.0.5.6.24-3.el7将被安装-->正在处理依赖关系MysqL-community-libs(x86-64)=5.6.24-3.el7,它被软件包MysqL-community-client-5.6.24-3.el7.x86_64需要-->正在处理依赖关系perl(Exporter),它被软件包MysqL-community-client-5.6.24-3.el7.x86_64需要--->软件包MysqL-community-common.x86_64.0.5.6.24-3.el7将被安装--->软件包net-tools.x86_64.0.2.0-0.17.20131004git.el7将被安装--->软件包perl.x86_64.4.5.16.3-285.el7将被安装-->正在处理依赖关系perl-libs=4:5.16.3-285.el7,它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Socket)>=1.3,它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Scalar::Util)>=1.10,它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl-macros,它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl-libs,它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(threads::shared),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(threads),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(constant),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Time::Local),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Time::HiRes),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Storable),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Socket),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Scalar::Util),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Pod::Simple::XHTML),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Pod::Simple::Search),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Filter::Util::Call),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系perl(Carp),它被软件包4:perl-5.16.3-285.el7.x86_64需要-->正在处理依赖关系libperl.so()(64bit),它被软件包4:perl-5.16.3-285.el7.x86_64需要--->软件包perl-DBI.x86_64.0.1.627-4.el7将被安装-->正在处理依赖关系perl(RPC::PlServer)>=0.2001,它被软件包perl-DBI-1.627-4.el7.x86_64需要-->正在处理依赖关系perl(RPC::PlClient)>=0.2000,它被软件包perl-DBI-1.627-4.el7.x86_64需要--->软件包perl-Data-Dumper.x86_64.0.2.145-3.el7将被安装--->软件包perl-File-Path.noarch.0.2.09-2.el7将被安装--->软件包perl-File-Temp.noarch.0.0.23.01-3.el7将被安装--->软件包perl-Getopt-Long.noarch.0.2.40-2.el7将被安装-->正在处理依赖关系perl(Pod::Usage)>=1.14,它被软件包perl-Getopt-Long-2.40-2.el7.noarch需要-->正在处理依赖关系perl(Text::ParseWords),它被软件包perl-Getopt-Long-2.40-2.el7.noarch需要--->软件包perl-PathTools.x86_64.0.3.40-5.el7将被安装-->正在检查事务--->软件包mariadb-libs.x86_64.1.5.5.41-2.el7_0将被取代--->软件包MysqL-community-libs.x86_64.0.5.6.24-3.el7将被舍弃--->软件包perl-Carp.noarch.0.1.26-244.el7将被安装--->软件包perl-Exporter.noarch.0.5.68-3.el7将被安装--->软件包perl-Filter.x86_64.0.1.49-3.el7将被安装--->软件包perl-PlRPC.noarch.0.0.2020-14.el7将被安装-->正在处理依赖关系perl(Net::Daemon)>=0.13,它被软件包perl-PlRPC-0.2020-14.el7.noarch需要-->正在处理依赖关系perl(Net::Daemon::Test),它被软件包perl-PlRPC-0.2020-14.el7.noarch需要-->正在处理依赖关系perl(Net::Daemon::Log),它被软件包perl-PlRPC-0.2020-14.el7.noarch需要-->正在处理依赖关系perl(Compress::Zlib),它被软件包perl-PlRPC-0.2020-14.el7.noarch需要--->软件包perl-Pod-Simple.noarch.1.3.28-4.el7将被安装-->正在处理依赖关系perl(Pod::Escapes)>=1.04,它被软件包1:perl-Pod-Simple-3.28-4.el7.noarch需要-->正在处理依赖关系perl(Encode),它被软件包1:perl-Pod-Simple-3.28-4.el7.noarch需要--->软件包perl-Pod-Usage.noarch.0.1.63-3.el7将被安装-->正在处理依赖关系perl(Pod::Text)>=3.15,它被软件包perl-Pod-Usage-1.63-3.el7.noarch需要-->正在处理依赖关系perl-Pod-Perldoc,它被软件包perl-Pod-Usage-1.63-3.el7.noarch需要--->软件包perl-Scalar-List-Utils.x86_64.0.1.27-248.el7将被安装--->软件包perl-Socket.x86_64.0.2.010-3.el7将被安装--->软件包perl-Storable.x86_64.0.2.45-3.el7将被安装--->软件包perl-Text-ParseWords.noarch.0.3.29-4.el7将被安装--->软件包perl-Time-HiRes.x86_64.4.1.9725-3.el7将被安装--->软件包perl-Time-Local.noarch.0.1.2300-2.el7将被安装--->软件包perl-constant.noarch.0.1.27-2.el7将被安装--->软件包perl-libs.x86_64.4.5.16.3-285.el7将被安装--->软件包perl-macros.x86_64.4.5.16.3-285.el7将被安装--->软件包perl-threads.x86_64.0.1.87-4.el7将被安装--->软件包perl-threads-shared.x86_64.0.1.43-6.el7将被安装-->正在检查事务--->软件包perl-Encode.x86_64.0.2.51-7.el7将被安装--->软件包perl-IO-Compress.noarch.0.2.061-2.el7将被安装-->正在处理依赖关系perl(Compress::Raw::Zlib)>=2.061,它被软件包perl-IO-Compress-2.061-2.el7.noarch需要-->正在处理依赖关系perl(Compress::Raw::Bzip2)>=2.061,它被软件包perl-IO-Compress-2.061-2.el7.noarch需要--->软件包perl-Net-Daemon.noarch.0.0.48-5.el7将被安装--->软件包perl-Pod-Escapes.noarch.1.1.04-285.el7将被安装--->软件包perl-Pod-Perldoc.noarch.0.3.20-4.el7将被安装-->正在处理依赖关系perl(parent),它被软件包perl-Pod-Perldoc-3.20-4.el7.noarch需要-->正在处理依赖关系perl(HTTP::Tiny),它被软件包perl-Pod-Perldoc-3.20-4.el7.noarch需要--->软件包perl-podlators.noarch.0.2.5.1-3.el7将被安装-->正在检查事务--->软件包perl-Compress-Raw-Bzip2.x86_64.0.2.061-3.el7将被安装--->软件包perl-Compress-Raw-Zlib.x86_64.1.2.061-4.el7将被安装--->软件包perl-HTTP-Tiny.noarch.0.0.033-3.el7将被安装--->软件包perl-parent.noarch.1.0.225-244.el7将被安装-->解决依赖关系完成 依赖关系解决 ================================================================================Package架构版本源大小 ================================================================================ 正在安装: MysqL-community-libsx86_645.6.24-3.el7MysqL56-community2.0M 替换mariadb-libs.x86_641:5.5.41-2.el7_0 MysqL-community-serverx86_645.6.24-3.el7MysqL56-community58M 为依赖而安装: MysqL-community-clientx86_645.6.24-3.el7MysqL56-community19M MysqL-community-commonx86_645.6.24-3.el7MysqL56-community256k net-toolsx86_642.0-0.17.20131004git.el7base304k perlx86_644:5.16.3-285.el7base8.0M perl-Carpnoarch1.26-244.el7base19k perl-Compress-Raw-Bzip2 x86_642.061-3.el7base32k perl-Compress-Raw-Zlibx86_641:2.061-4.el7base57k perl-DBIx86_641.627-4.el7base802k perl-Data-Dumperx86_642.145-3.el7base47k perl-Encodex86_642.51-7.el7base1.5M perl-Exporternoarch5.68-3.el7base28k perl-File-Pathnoarch2.09-2.el7base26k perl-File-Tempnoarch0.23.01-3.el7base56k perl-Filterx86_641.49-3.el7base76k perl-Getopt-Longnoarch2.40-2.el7base56k perl-HTTP-Tinynoarch0.033-3.el7base38k perl-IO-Compressnoarch2.061-2.el7base260k perl-Net-Daemonnoarch0.48-5.el7base51k perl-PathToolsx86_643.40-5.el7base82k perl-PlRPCnoarch0.2020-14.el7base36k perl-Pod-Escapesnoarch1:1.04-285.el7base50k perl-Pod-Perldocnoarch3.20-4.el7base87k perl-Pod-Simplenoarch1:3.28-4.el7base216k perl-Pod-Usagenoarch1.63-3.el7base27k perl-Scalar-List-Utilsx86_641.27-248.el7base36k perl-Socketx86_642.010-3.el7base49k perl-Storablex86_642.45-3.el7base77k perl-Text-ParseWordsnoarch3.29-4.el7base14k perl-Time-HiResx86_644:1.9725-3.el7base45k perl-Time-Localnoarch1.2300-2.el7base24k perl-constantnoarch1.27-2.el7base19k perl-libsx86_644:5.16.3-285.el7base687k perl-macrosx86_644:5.16.3-285.el7base42k perl-parentnoarch1:0.225-244.el7base12k perl-podlatorsnoarch2.5.1-3.el7base112k perl-threadsx86_641.87-4.el7base49k perl-threads-sharedx86_641.43-6.el7base39k 事务概要 ================================================================================ 安装2软件包(+37依赖软件包) 总下载量:92MIsthisok[y/d/N]:
输入 y 继续下载相关文件;
-------------------------------------------------------------------------------- 总计1.1MB/s|92MB01:24 从file:/etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL检索密钥 导入GPGkey0x5072E1F5: 用户ID:"MysqLReleaseEngineering<MysqL-build@oss.oracle.com>" 指纹:a4a9406876fcbd3c456770c88c718d3b5072e1f5 软件包:MysqL-community-release-el7-5.noarch(@/MysqL-community-release-el7-5.noarch) 来自:file:/etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL 是否继续?[y/N]:
遇到上述提示,输入 y 继续,执行完成会提示“完毕!”。此时MysqL 安装完成,它包含了 MysqL-community-server、MysqL-community-client、MysqL-community-common、MysqL-community-libs 四个包。
执行
rpm-qiMysqL-community-server.x86_640:5.6.24-3.el7
执行
whereisMysqL
可以看到 MysqL 的安装目录是 /usr/bin/
[root@localhost~]#whereisMysqL MysqL:/usr/bin/MysqL/usr/lib64/MysqL/usr/share/MysqL/usr/share/man/man1/MysqL.1.gz
启动和关闭 MysqL Server
启动 MysqL Server
systemctlstartMysqLd
查看 MysqL Server 状态
systemctlstatusMysqLd
关闭 MysqL Server
systemctlstopMysqLd
测试是否安装成功
MysqL
可以进入 MysqL 命令行界面
[root@bogonsoftware]#MysqL WelcometotheMysqLmonitor.Commandsendwith;or\g. YourMysqLconnectionidis2 Serverversion:5.6.24MysqLCommunityServer(GPL) copyright(c)2000,2015,Oracleand/oritsaffiliates.Allrightsreserved. OracleisaregisteredTrademarkofOracleCorporationand/orits affiliates.OthernamesmaybeTrademarksoftheirrespective owners. Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement. MysqL>
防火墙设置
远程访问 MysqL, 需开放默认端口号 3306.
方式1:iptables(CentOS 7.x版本之前用法,不推荐)
打开 iptables 的配置文件:
vi/etc/sysconfig/iptables
修改
*filter :INPUTACCEPT[0:0] :FORWARDACCEPT[0:0] :OUTPUTACCEPT[0:0] -AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT -AINPUT-picmp-jACCEPT -AINPUT-ilo-jACCEPT -AINPUT-ptcp-mstate--stateNEW-mtcp--dport22-jACCEPT -AINPUT-jREJECT--reject-withicmp-host-prohibited -AFORWARD-jREJECT--reject-withicmp-host-prohibited COMMIT
在里面加入这2行:
-ARH-Firewall-1-INPUT-mstate�CstateNEW-mtcp-ptcp�Cdport3306-jACCEPT -ARH-Firewall-1-INPUT-mstate�CstateNEW-mudp-pudp�Cdport3306-jACCEPT
改为
*filter :INPUTACCEPT[0:0] :FORWARDACCEPT[0:0] :OUTPUTACCEPT[0:0] -AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT -AINPUT-picmp-jACCEPT -AINPUT-ilo-jACCEPT -AINPUT-ptcp-mstate--stateNEW-mtcp--dport22-jACCEPT -ARH-Firewall-1-INPUT-mstate�CstateNEW-mtcp-ptcp�Cdport3306-jACCEPT -ARH-Firewall-1-INPUT-mstate�CstateNEW-mudp-pudp�Cdport3306-jACCEPT -AINPUT-jREJECT--reject-withicmp-host-prohibited -AFORWARD-jREJECT--reject-withicmp-host-prohibited COMMIT
如果该 iptables 配置文件 不存在,先执行
yum install iptables-services
安装
执行 iptables 重启生效
serviceiptablesrestart
方式2:firewall-cmd(推荐)
执行
firewall-cmd--permanent--zone=public--add-port=3306/tcp firewall-cmd--permanent--zone=public--add-port=3306/udp
这样就开放了相应的端口。
执行
firewall-cmd--reload
使最新的防火墙设置规则生效。
MysqL 安全设置
服务器启动后,可以执行
MysqL_secure_installation;
看到如下提示
[root@bogonsoftware]#MysqL_secure_installation NOTE:RUNNINgalLPARTSOFTHISSCRIPTISRECOMMENDEDFORALLMysqL SERVERSINPRODUCTIONUSE!PLEASEREADEACHSTEPCAREFULLY!InordertologintoMysqLtosecureit,we'llneedthecurrent passwordfortherootuser.Ifyou'vejustinstalledMysqL,and youhaven'tsettherootpasswordyet,thepasswordwillbeblank,soyoushouldjustpressenterhere. Entercurrentpasswordforroot(enterfornone):
此时输入 root 原始密码(初始化安装的话为空),接下来,为了安全,MysqL 会提示你重置 root 密码,移除其他用户账号,禁用 root 远程登录,移除 test 数据库,重新加载 privilege 表格等,你只需输入 y 继续执行即可。
OK,successfullyusedpassword,movingon... SettingtherootpasswordensuresthatnobodycanlogintotheMysqL rootuserwithouttheproperauthorisation.Setrootpassword?[Y/n]yNewpassword: Re-enternewpassword:Passwordupdatedsuccessfully! Reloadingprivilegetables.. ...Success!Bydefault,aMysqLinstallationhasananonymoususer,allowinganyonetologintoMysqLwithouthavingtohaveauseraccountcreatedfor them.Thisisintendedonlyfortesting,andtomaketheinstallationgoabitsmoother.Youshouldremovethembeforemovingintoa productionenvironment. Removeanonymoususers?[Y/n]y ...Success! normally,rootshouldonlybeallowedtoconnectfrom'localhost'.This ensuresthatsomeonecannotguessattherootpasswordfromthenetwork.disallowrootloginremotely?[Y/n]y ...Success!Bydefault,MysqLcomeswithadatabasenamed'test'thatanyonecanaccess.Thisisalsointendedonlyfortesting,andshouldberemovedbeforemovingintoaproductionenvironment. Removetestdatabaseandaccesstoit?[Y/n]y -Droppingtestdatabase...ERROR1008(HY000)atline1:Can'tdropdatabase'test';databasedoesn'texist ...Failed!Notcritical,keepmoving... -Removingprivilegesontestdatabase... ...Success! Reloadingtheprivilegetableswillensurethatallchangesmadesofar willtakeeffectimmediately. ReloadprivilegetablesNow?[Y/n]y ...Success! Alldone!Ifyou'vecompletedalloftheabovesteps,yourMysqL installationshouldNowbesecure. ThanksforusingMysqL! Cleaningup...
至此,整个 MysqL 安装完成。
远程访问设置
创建一个普通用户 sa ,密码是 some_pass
createuser'sa'@'%'IDENTIFIEDBY'some_pass';
给这个用户授予 SELECT,INSERT,UPDATE,DELETE 的远程访问的权限,这个账号一般用于提供给实施的系统访问
GRANTSELECT,DELETEON*.*TO'sa'@'%';
创建一个管理员用户 admin 账号 ,密码是 some_pass
createuser'admin'@'%'IDENTIFIEDBY'some_pass';
给这个用户授予所有的远程访问的权限。这个用户主要用于管理整个数据库、备份、还原等操作。
GRANTALLON*.*TO'admin'@'%';
使授权立刻生效
flushprivileges;
更改数据存放目录
创建数据存放目录
home 目录下建立 data 目录
mkdir/home/data
把 MysqL 服务进程停掉
如果 MysqL 是启动的,要先关闭
MysqLadmin-uroot-pshutdown
移动数据到数据存放目录
/var/lib/MysqL
整个目录移到/home/data
,执行
mv/var/lib/MysqL/home/data
这样就把 MysqL 的数据文件移动到了/home/data/MysqL
下
修改/etc/my.cnf
文件,
[MysqLd] datadir=/home/data/MysqLsocket=/home/data/MysqL/MysqL.sock[MysqL] socket=/home/data/MysqL/MysqL.sock
修改权限
chown-RMysqL:MysqL/home/data/MysqL
重启后,如果不能启动 MysqL 服务,执行
vi/etc/sysconfig/selinux
调整
SELINUX=permissive
保存设置,执行 reboot 重启生效
开机自起
查看 MysqL 服务是否开机启动
[root@localhost~]#systemctlis-enabledMysqL.service;echo$? enabled0
如果是 enabled 则说明是开机自动,如果不是,执行
chkconfig--levels235MysqLdon
设置字符集
一般的,为了支持中文,我们应该讲字符集设为 UTF-8, 执行
SHOWVARIABLESLIKE'character%';
查看当前 MysqL 字符集
MysqL>SHOWVARIABLESLIKE'character%'; +--------------------------+----------------------------+ |Variable_name|Value| +--------------------------+----------------------------+ |character_set_client|utf8| |character_set_connection|utf8| |character_set_database|latin1| |character_set_filesystem|binary| |character_set_results|utf8| |character_set_server|latin1| |character_set_system|utf8| |character_sets_dir|/usr/share/MysqL/charsets/| +--------------------------+----------------------------+ 8rowsinset(0.00sec)
可以看到默认服务器的字符器是 latin1 ,对中文不友好。
修改/etc/my.cnf
文件,添加字符集的设置
[MysqLd] character_set_server=utf8[MysqL]default-character-set=utf8
重启 MysqL,可以看到字符集已经修改了
MysqL>SHOWVARIABLESLIKE'character%' ->; +--------------------------+----------------------------+ |Variable_name|Value| +--------------------------+----------------------------+ |character_set_client|utf8| |character_set_connection|utf8| |character_set_database|utf8| |character_set_filesystem|binary| |character_set_results|utf8| |character_set_server|utf8| |character_set_system|utf8| |character_sets_dir|/usr/share/MysqL/charsets/| +--------------------------+----------------------------+ 8rowsinset(0.00sec)
其他常用配置配置
调整 MysqL 运行参数,修改/etc/my.cnf
文件,常用配置如下:
[MysqLd] basedir=path#使用给定目录作为根目录(安装目录)。 datadir=path#从给定目录读取数据库文件。 pid-file=filename#为MysqLd程序指定一个存放进程ID的文件(仅适用于UNIX/Linux系统); socket=/tmp/MysqL.sock#为MysqL客户程序与服务器之间的本地通信指定一个套接字文件(Linux下默认是/var/lib/MysqL/MysqL.sock文件) port=3306#指定Mssql侦听的端口 key_buffer=384M#key_buffer是用于索引块的缓冲区大小,增加它可得到更好处理的索引(对所有读和多重写)。 索引块是缓冲的并且被所有的线程共享,key_buffer的大小视内存大小而定。 table_cache=512#为所有线程打开表的数量。增加该值能增加MysqLd要求的文件描述符的数量。可以避免频繁的打开数据表产生的开销 sort_buffer_size=2M#每个需要进行排序的线程分配该大小的一个缓冲区。增加这值加速ORDERBY或GROUPBY操作。 注意:该参数对应的分配内存是每连接独占!如果有100个连接,那么实际分配的总共排序缓冲区大小为100×6=600MB read_buffer_size=2M#读查询操作所能使用的缓冲区大小。和sort_buffer_size一样,该参数对应的分配内存也是每连接独享。 query_cache_size=32M#指定MySQL查询结果缓冲区的大小 read_rnd_buffer_size=8M#改参数在使用行指针排序之后,随机读用的。 myisam_sort_buffer_size=64M#MyISAM表发生变化时重新排序所需的缓冲 thread_concurrency=8#最大并发线程数,取值为服务器逻辑cpu数量×2,如果cpu支持H.T超线程,再×2 thread_cache=8##缓存可重用的线程数 skip-locking#避免MysqL的外部锁定,减少出错几率增强稳定性。 [MysqLdump] max_allowed_packet=16M#服务器和客户端之间最大能发送的可能信息包 [myisamchk] key_buffer=256M sort_buffer=256M read_buffer=2M write_buffer=2M
其他可选参数:
back_log = 384
指定MysqL可能的连接数量。 当MysqL主线程在很短时间内接收到非常多的连接请求,该参数生效,主线程花费很短时间检查连接并且启动一个新线程。 back_log参数的值指出在MysqL暂时停止响应新请求之前的短时间内多少个请求可以被存在堆栈中。 如果系统在一个短时间内有很多连接,则需要增大该参数的值,该参数值指定到来的TCP/IP连接的侦听队列的大小。 试图设定back_log高于你的操作系统的限制将是无效的。默认值为50。对于Linux系统推荐设置为小于512的整数。
max_connections = n
MysqL服务器同时处理的数据库连接的最大数量(默认设置是100)。超过限制后会报 Too many connections 错误
key_buffer_size = n
用来存放索引区块的RMA值(默认设置是8M),增加它可得到更好处理的索引(对所有读和多重写)
record_buffer:
每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区。 如果你做很多顺序扫描,你可能想要增加该值。默认数值是131072(128K)
wait_timeout:
服务器在关闭它之前在一个连接上等待行动的秒数。
interactive_timeout:
服务器在关闭它前在一个交互连接上等待行动的秒数。 一个交互的客户被定义为对 MysqL_real_connect()使用 CLIENT_INteraCTIVE 选项的客户。 默认数值是28800,可以把它改为3600。
skip-name-resolve
禁止MysqL对外部连接进行DNS解析,使用这一选项可以消除MysqL进行DNS解析的时间。 但需要注意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MysqL将无法正常处理连接请求!
log-slow-queries = slow.log
记录慢查询,然后对慢查询一一优化
skip-innodb
skip-bdb
关闭不需要的表类型,如果你需要,就不要加上这个
备份、还原
方法1:命令行
备份
MysqLdump--socket=/home/data/MysqL/MysqL.sock--single-transaction=TRUE-uroot-pemsc>emsc.sql
还原
MysqL--socket=/home/data/MysqL/MysqL.sock-uroot-pemsc<emsc.sql
Can''t connect to local MySQL server through socket ''/opt/lampp/var/mysql/mysql.sock'' (2)
ERROR 2002 (HY000): Can''t connect to local MySQL server through socket ''/opt/lampp/var/mysql/mysql.sock'' (2)
原因:系统盘满了
[root@localhost opt]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
18G 17G 0 100% /
tmpfs 504M 0 504M 0% /dev/shm
/dev/sda1 477M 80M 372M 18% /boot
[root@localhost opt]#
解决:
删除大文件后,重启系统解决
[root@localhost mysql]# /opt/lampp/lampp status
Version: XAMPP for Linux 1.8.3-3
Apache is not running.
MySQL is not running.
ProFTPD is running.
df: 未处理文件系统
[root@localhost opt]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
18G 17G 0 100% /
tmpfs 504M 0 504M 0% /dev/shm
/dev/sda1 477M 80M 372M 18% /boot
[root@localhost opt]#
[root@localhost ~]# /opt/lampp/lampp status
Version: XAMPP for Linux 1.8.3-3
Apache is not running.
MySQL is running.
ProFTPD is running.
转
xampp 无法启动mysql 找不到mysql.sock
(2016-02-24 23:21:24)
分类: 技术 |
如果xampp中的mysql启动不了,出现ERROR 2002 (HY000): Can''t connect to local MySQL server through socket ''/opt/lampp/var/mysql/mysql.sock'' (2)报错,
停止xampp的时候报:
-bash-4.1# /opt/lampp/lampp stop
Stopping XAMPP for Linux 1.8.2-6...
XAMPP: Stopping Apache...ok.
XAMPP: Stopping MySQL...ok.
XAMPP: Stopping ProFTPD...kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
fail.
解决办法:
如果网上一些方法不好用的话,可以试试以下方法:
1. 确定系统盘是否满了
#df -h
2. 删除/opt/lampp目录中的pid文件(删掉后xampp重启时会重建,如果不放心,可以先备份lampp目录)
删除mysql相关缓存:
#rm -rf /opt/lampp/var/mysql/VM_*
删除proftp相关缓存:
#rm -rf /opt/lampp/var/proftpd.pid
如果找不到pid文件,可以搜一下:
#find /opt/lampp -name ''*.pid''
Can''t connect to local MySQL server through socket ''/var/lib/mysql/mysql.sock''
MySQL已经被我移到数据盘了,本地连接数据库会报错:Can''t connect to local MySQL server through socket ''/var/lib/mysql/mysql.sock''
但是远程是可以连接的,my.cnf设置mysql的根目录也改成了数据盘的地址,还要在加上client的参数,设置如下:
[client]
socket = /home/data/mysql/mysql.sock
之后重启下mysql就可以了
CentOS 6.2 安装 MySQL 5.7.28的教程(mysql 笔记)
1.环境准备
1.MySQL 安装路径:/usr/local
2.CentOS 6.2 服务器(64 bit)
3.MySQL 5.7.28 下载(64bit)
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
2.MySQL安装
2.1 解压缩,并重命名为 mysql
2.2 在 mysql 目录下,创建 data 目录
2.3 创建 mysql 的用户组和用户,并对mysql目录设置用户组和用户
2.4 初始化 mysql
2.5 启动 mysql 服务
2.6 设置 mysql 服务开机自启动
3.MySQL连接
4.修改密码
将生成的随机密码,修改为 root
5. 设定远程登录mysql(本例通过 Navicate 远程连接 MySQL)
在Linux下为了安全,默认是不允许 mysql 本机以外的机器访问 mysql 数据库服务,因此需要重新授权root,方便远程访问。
如果此时 Navicate 远程还是无法连接 MySQL,请注意防火墙问题。线上环境一般建议关闭指定端口,不建议关闭防火墙。如何开放指定端口,请参考: Linux开放指定端口
本实例使用 MySQL 默认端口 3306 来演示。通过命令 vi /etc/sysconfig/iptables 来开放端口
6. Navicate 远程登录 MySQL
测试远程登录 MySQL,连接成功。
出现如下问题,请参考:
1.ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords
请参考链接:https://www.jb51.net/article/174243.htm
2. ERROR 2002 (HY000): Can''t connect to local MySQL server through socket ''/tmp/mysql.sock''
请参考链接:https://www.jb51.net/article/174244.htm
3.错误信息为:mysqld: unrecognized service
出现错误情况:使用二进制源码安装 MySQL,导致无法使用 service mysqld start 启动 MySQL服务
请参考链接:https://www.jb51.net/article/174244.htm
总结
以上所述是小编给大家介绍的CentOS 6.2 安装 MySQL 5.7.28的教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
- MySQL 5.7.30 安装与升级问题详细教程
- CentOS7 通过YUM安装MySQL5.7的步骤详解
- Windows下mysql-5.7.28下载、安装、配置教程图文详解
- mysql 5.7.27 安装配置方法图文教程
- MySQL5.7.27-winx64版本win10下载安装教程图解
- CentOS7 64位下MySQL5.7安装与配置教程
- MySQL5.7.33安装过程图文详解
centos 7 yum 安装 mysql glib 安装 mysql
centos 7 YUM 在线安装版
1.wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm 下载
2.rpm -Uvh mysql57-community-release-el7-10.noarch.rpm 安装rpm源
3.yum install -y mysql-community-server 取决于网速
4.systemctl start mysqld.service / service mysqld start 启动mysql
5.service mysqld status 查看启动状态
6.
7.grep ''temporary password'' /var/log/mysqld.log 查看mysql临时密码
8.mysql -uroot -p 登录mysql
9.ALTER USER ''root''@''localhost'' IDENTIFIED BY ''root'';
修改密码-> 提示: ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
10. set global validate_password_policy=0;
11. set global validate_password_length=1; 重复9步骤--->修改密码
12.GRANT ALL PRIVILEGES ON *.* TO ''root''@''%'' IDENTIFIED BY ''yourpassword'' WITH GRANT OPTION; 开放远程登录
FLUSH PRIVILEGES; 刷新配置
13.关闭防火墙
查看防火墙 systemctl status firewalld.service / service iptables status status/start/restart/stop --option
14.修改配置文件
vi /etc/my.cnf 编辑my.cnf / 没有手动创建文件
正确配置
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
[mysqld]
character_set_server=utf8
#[client]
#default-character-set=utf8
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
15.systemctl status mysqld.service 查看mysql 状态 status/start/stop/restart -- option
Centos glib版安装
1.tar -zvxf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 解压
2.mv mysql-5.7.26-linux-glibc2.12-x86_64/* /usr/local/mysql 移动文件
3.groupadd user 添加用户
4.useradd -r -g mysql mysql 添加用户组
5.rpm -qa | grep libaio 检查libaio
6.yum -y install libaio 安装libaio
7.vi /etc/my.cnf 编辑my.cnf / 没有手动创建文件
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
#skip-name-resolve
#设置3306端口
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
#default-storage-engine=MyIsam
default-storage-engine=INNODB
#lower_case_table_name=1
max_allowed_packet=16M
8.mkdir data 创建目录
9.[root@localhost mysql]# chown -R mysql:mysql ./ 授权目录拥有者
10.[root@localhost mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ 初始化
11.成功图示
12.[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
13.增加 mysqld 服务控制脚本执行权限:[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld
14.将 mysqld 服务加入到系统服务:[root@localhost mysql]# chkconfig --add mysqld
15.检查mysqld服务是否已经生效:[root@localhost mysql]# chkconfig --list mysqld
16.[root@localhost mysql]# service mysqld start 启动mysql 提示 err目录 pid不存在
Starting MySQL.Logging to ''/usr/local/mysql/data/localhost.localdomain.err''.
2019-07-04T02:40:27.646818Z mysqld_safe Directory ''/var/lib/mysql'' for UNIX socket file don''t exists.
ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).
17.[root@localhost mysql]# mkdir /var/lib/mysql
[root@localhost mysql]# chown -R mysql /var/lib/mysql
18.再次启动
19.登录 提示command
20.进行软链接
ln -s /usr/local/mysql/bin/mysql /usr/bin
21.
22.先进行密码设置 ,
SET PASSWORD = PASSWORD(''123456''); 设置初始密码。 不然操作不了数据库
23.提示 You must reset your password using ALTER USER statement before executing this statement.
24
25.use mysql 切到系统库
26.mysql> grant all privileges on *.* to root@"%" identified by "123456" with grant option; 授权远程登录
Query OK, 0 rows affected, 1 warning (0.00 sec)
27.mysql> flush privileges; 刷新
Query OK, 0 rows affected (0.00 sec)
28. systemctl status mysqld.service mysql 状态
29.systemctl status firewalld.service 关闭防火墙
30.
完毕。整理OK。亲测可用。注意以上安装都没有配置环境变量。虚拟学习而已
补充:
今天关于CentOS 7 安装 MySQL和centos7安装MySQl5.7的分享就到这里,希望大家有所收获,若想了解更多关于Can''t connect to local MySQL server through socket ''/opt/lampp/var/mysql/mysql.sock'' (2)、Can''t connect to local MySQL server through socket ''/var/lib/mysql/mysql.sock''、CentOS 6.2 安装 MySQL 5.7.28的教程(mysql 笔记)、centos 7 yum 安装 mysql glib 安装 mysql等相关知识,可以在本站进行查询。
本文标签: