专栏首页营琪的小记录腾讯云服务器Linux系统--安装MySql

腾讯云服务器Linux系统--安装MySql

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_43126117/article/details/100840495

检查Linux服务器是否有Mysql

[root@VM_0_16_centos ~]# rpm -qa|grep mysql*
[root@VM_0_16_centos ~]# rpm -qa|grep -i mysql

如有,必须卸载干净,否则后面安装会报各种错误。

我们还是通过华为云镜像进行下载 MySql-Server、MySql-Client这两个服务,其他(开发库、兼容库、测试组件等)不安装。

创建目录,进入目录,并下载文件。

[root@VM_0_16_centos ~]# mkdir /usr/lib/mysql
[root@VM_0_16_centos ~]# cd /usr/lib/mysql

[root@VM_0_16_centos mysql]# wget https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-8.0/mysql-community-server-8.0.16-2.el7.x86_64.rpm

[root@VM_0_16_centos mysql]# wget https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-8.0/mysql-community-client-8.0.16-2.el7.x86_64.rpm

我安装的时候提示我需要两个服务,我就下载安装了。

[root@VM_0_16_centos mysql]# wget https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-8.0/mysql-community-common-8.0.16-2.el7.x86_64.rpm
[root@VM_0_16_centos mysql]# wget https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-8.0/mysql-community-libs-8.0.16-2.el7.x86_64.rpm

安装顺序如下:common>libs>server>client

注意的一点是,从 RPM 版本 4.1 开始,在安装或升级软件包时会检查软件包的签名。如果签名校验失败,你就会看到如下所示 的错误消息:

Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

安装的时候需要取消校验签名 --force --nodeps

--force  强行置换套件或文件。

--nodeps  不验证套件档的相互关联性。

[root@VM_0_16_centos mysql]# rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm 

[root@VM_0_16_centos mysql]# rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm --force --nodeps

[root@VM_0_16_centos mysql]# rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm --force --nodeps

[root@VM_0_16_centos mysql]# rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm 

安装完毕后,启动mysql服务

[root@VM_0_16_centos ~]# systemctl start mysqld

我启动的时候,报了很多错误。

所以给一个通用的解法:检查mysql服务的系统日志,看看报什么错。路径是什么呢? 可以通过配置文件获取

[root@VM_0_16_centos ~]# cat /etc/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]
#
# 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
datadir=/opt/data

skip-grant-tables

然后登陆MySQL,并修改密码

通过 grep "password" /var/log/mysqld.log ,取得mysql初始化随机密码,但是我这里不可以。

只能通过修改配置文件,进入无保护状态下的MySQL。

[root@VM_0_16_centos ~]# vi /etc/my.cnf 

//加上
    skip-grant-tables
//重启
[root@VM_0_16_centos ~]# systemctl restart mysqld
//无密码进入
[root@VM_0_16_centos ~]# mysql -uroot -p

use mysql;
UPDATE user SET authentication_string = Password ('密码') WHERE User = 'root' ;
flush privileges ; 

quit;

//删除/etc/my.cnf 中 skip-grant-tables
//重启

再次通过刚刚设置的密码进入系统,可能还要重新设置密码,刚刚设置的好像只是临时的

SET PASSWORD = PASSWORD('!Qw56:');   //密码需要很复杂,否则报错
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

//设置密码为永久
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; 
//设置外部可以访问
grant all privileges on *.* to root@"%" identified by "!Qw56:";
//更新
flush privileges; 

还需要开放云服务器安全组的端口。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • ssh无密码登陆

    方便我们后续的无密码登陆别的机器,例如要登陆Hadoop、spark、hive等等,也方便我们在公司使用多台服务器。

    营琪
  • 腾讯云服务器Linux系统--安装Tomcat

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    营琪
  • 算法:递归和分治-理论

    一说起循环,大家都会说一个例子:“从前有座山,山里有座庙,庙里有个和尚,和尚在讲故事,从前有座山,山里有座庙,庙里有个和尚,和尚在讲故事,从前有座山...” 这...

    营琪
  • pyfolio教程2——第一个returns_tear_sheet

            首先,说明一下我们的数据,为了一步一步的明确pyfolio的功能和一些结果,我们首先选取我们的策略是0.3的中证500指数、0.3的中证1000...

    钱塘小甲子
  • Docker 构建容器Tomcat+Nginx+MySQL

    一、构建Tomcat Tomcat是一个免费开源的轻量级web服务器,在中小型企业和并发量不高的场合普遍使用,是开发和调试JSP程序的首选。下面使用Docker...

    小手冰凉
  • mysql系列之多实例3----基于my

        上一篇博文mysql系列之多实例2----基于多配置文件介绍了,如何部署基于多配置文件的mysql多实例,本篇博文将介绍基于mysql自带的mysqld...

    py3study
  • 函数模板之compare比较大小—C++

    汐楓
  • 破解Mariadb5.5密码

    我们再打开一个ssh终端,直接使用 mysql 命令登录 MariaDB5.5 数据库并修改 root 登录密码

    院长技术
  • 如何在Ubuntu 13.10上从Binary Tarballs安装MariaDB

    目前,MariaDB可以直接替代MySQL而不需要任何额外代码配置。本文将介绍如何在Ubuntu 13.10 VPS上安装MariaDB5.5.34 x86_6...

    好烟
  • python关于return的用法

    return是返回一个方法的值,如果你没有定义一个方法却用return 去返回这就大错特错了

    py3study

扫码关注云+社区

领取腾讯云代金券