详解腾讯云CentOS7.0使用yum安装mysql及使用遇到的问题

发布时间 - 2026-01-10 22:14:44    点击率:

背景:

今天才申请了腾讯云+校园计划的1元服务器,安装了Centos7.0,在安装MySQL的时候,使用yum list | grep mysql 来查找yum源中是否有mysql,结果如下:

[root@VM_47_56_centos ~]# yum list | grep mysql
akonadi-mysql.x86_64          1.9.2-4.el7          base   
apr-util-mysql.x86_64          1.5.2-6.el7          base    
mysql-proxy.x86_64           0.8.5-2.el7          epel   
mysql-proxy-devel.x86_64        0.8.5-2.el7          epel   
mysql-router.x86_64           2.0.2-1.el7          mysql-tools-community
mysql-router-debuginfo.x86_64      2.0.2-1.el7          mysql-tools-community
mysql-utilities.noarch         1.5.6-1.el7          mysql-tools-community
mysql-utilities-extra.noarch      1.5.6-1.el7          mysql-tools
mysqlreport.noarch           3.5-11.el7           epel   
mysqltuner.noarch            1.2.0-7.el7          epel   
省略部分内容。。。。
[root@VM_47_56_centos ~]# 

总之是看不到mysql-server的影子,(PS:据说Centos7.0的源中暂时还没有mysql,但是相同版本的Centos在阿里云是可以直接使用yum install mysql-server 来直接安装mysql的)

于是找了一些mysql的安装源,安装过程如下:

安装过程:

为了解决这个问题,我们要先下载mysql的repo源。

1、下载mysql的repo源

$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2、安装mysql-community-release-el7-5.noarch.rpm包

$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

安装这个包后,会获得两个mysql的yum repo源:

/etc/yum.repos.d/mysql-community.repo和/etc/yum.repos.d/mysql-community-source.repo。

3、安装mysql

$ sudo yum install mysql-server

这个过程中就会看到有mysql的软件包存在:

[root@VM_47_56_centos ~]# sudo yum install mysql-server
已加载插件:fastestmirror, langpacks          
| 2.5 kB 00:00:00   
mysql-tools-community                                 | 2.5 kB 00:00:00   
mysql56-community                                     | 2.5 kB 00:00:00   
(1/3): mysql-connectors-community/x86_64/primary_db                    | 8.6 kB 00:00:00   
(2/3): mysql-tools-community/x86_64/primary_db                      | 22 kB 00:00:00   
(3/3): mysql56-community/x86_64/primary_db                        | 109 kB 00:00:01   
Loading mirror speeds from cached hostfile
 * base: mirrors.sina.cn
 * extras: mirrors.sina.cn
 * updates: mirrors.sina.cn
正在解决依赖关系
--> 正在检查事务

省略内容。。。

依赖关系解决
=================================================================================================================
 Package              架构       版本            源              大小
=================================================================================================================
正在安装:
 mysql-community-libs       x86_64      5.6.27-2.el7        mysql56-community      2.0 M
   替换 mariadb-libs.x86_64 1:5.5.44-1.el7_1
 mysql-community-server      x86_64      5.6.27-2.el7        mysql56-community      58 M
为依赖而安装:
 mysql-community-client      x86_64      5.6.27-2.el7        mysql56-community      19 M
 mysql-community-common      x86_64      5.6.27-2.el7        mysql56-community      256 k
 numactl-libs           x86_64      2.0.9-5.el7_1       

事务概要
=================================================================================================================
安装 2 软件包 (+9 依赖软件包)

总下载量:80 M
Is this ok [y/d/N]: y

下边的安装和其他安装一样,

根据步骤安装就可以了,不过安装完成后,没有密码,需要重置密码。

4、重置密码

重置密码前,首先要登录

$ mysql -u root

登录时有可能报这样的错:ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:

$ sudo chown -R mysql:mysql /var/lib/mysql #这里的mysql是用户名(需要设置用户组合用户)

然后,重启服务:

$ service mysqld restart

接下来登录重置密码:

$ mysql -u root
mysql > use mysql;
mysql > update user set password=password('xu827928') where user='root';
mysql > exit;

5、开放3306端口(可以不用设置)

$ sudo vim /etc/sysconfig/iptables

添加以下内容:

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

保存后重启防火墙:

$ sudo service iptables restart

这样从其它客户机也可以连接上mysql服务了。

6、修改权限可以使其他机器登录:

mysql>mysql -h localhost -u root //这样应该可以进入MySQL服务器 
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION //赋予任何主机访问数据的权限 
mysql>FLUSH PRIVILEGES //修改生效 
mysql>EXIT //退出MySQL服务器

使用时遇到的问题

(1)Java.sql.SQLException: Access denied for user ‘root'@'localhost' (using password:YES)

java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES) 
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946) 
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:812) 
at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3269)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1182) 

问题的场景是:在命令行模式下用户名和密码都是正确的但是就是出现登陆不了授权失败的问题。

解决方法:

进入MySQL命令台:

mysql> select user,password,host from mysql.user;

可以看出该表显示的倒数第二行为:

+--------+-------------------------------------------+--------------------+
| user  | password                 | host        |
+--------+-------------------------------------------+--------------------+
| root  |                      | %         |

可以看出在root用户下的任何主机是没有password的,因此可以采取两种方式,在远端使用的时候没有密码,显然是不安全的,然后就是为其在远端访问的时候设置密码。步骤如下:

mysql> grant all privileges on *.* to root@"%" identified by "your password";
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

这相当于是给IP-xxx.xxx.xxx.xxx赋予了所有的权限,包括远程访问权限。

这样就可以为其设置密码,然后就可以使用密码进行登录。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# centos7  # yum安装mysql  # centos  # yum  # mysql  # 7  # CentOS7.0下安装FTP服务的方法  # Linux系列教程之虚拟机中安装Centos7.0  # 详解CentOS7.0安装与配置Tomcat-7  # Centos7.0安装ceph(JEWEL)及以上版本的实例解析  # 软件包  # 为其  # 可以看出  # 重启  # 就可以  # 远端  # 下载量  # 安装过程  # 都是  # 访问权限  # 就会  # 还没有  # 两种  # 腾讯  # 可以直接  # 找了  # 使其  # 可以使用  # 要先  # 解决方法 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 浅谈redis在项目中的应用  如何彻底删除建站之星生成的Banner?  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  java ZXing生成二维码及条码实例分享  iOS UIView常见属性方法小结  网站制作报价单模板图片,小松挖机官方网站报价?  Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  动图在线制作网站有哪些,滑动动图图集怎么做?  深圳网站制作平台,深圳市做网站好的公司有哪些?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  非常酷的网站设计制作软件,酷培ai教育官方网站?  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  如何用景安虚拟主机手机版绑定域名建站?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  如何快速搭建高效简练网站?  Python数据仓库与ETL构建实战_Airflow调度流程详解  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  Laravel如何优化应用性能?(缓存和优化命令)  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  昵图网官网入口 昵图网素材平台官方入口  详解阿里云nginx服务器多站点的配置  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  如何快速搭建高效香港服务器网站?  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  如何使用 jQuery 正确渲染 Instagram 风格的标签列表  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  如何在橙子建站上传落地页?操作指南详解  Laravel如何使用Sanctum进行API认证?(SPA实战)  文字头像制作网站推荐软件,醒图能自动配文字吗?  大连 网站制作,大连天途有线官网?  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  如何用AI帮你把自己的生活经历写成一个有趣的故事?  Python函数文档自动校验_规范解析【教程】  JavaScript如何实现音频处理_Web Audio API如何工作?  三星网站视频制作教程下载,三星w23网页如何全屏?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  如何在万网自助建站中设置域名及备案?  Python并发异常传播_错误处理解析【教程】  利用vue写todolist单页应用  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  php json中文编码为null的解决办法