centos7.0环境下安装MySql_8.0.12

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: centos7.0环境下安装MySql_8.0.12

一 官网下载MySql

  1. 进入官网,点击"DOWNLOAD"

mysql官网
image.png

  1. 点击“Community”
    image.png

  2. 点击左侧"MySql Community Server "
    image.png

  3. 下拉页面,选择"Linux -Generic",然后选择下边的适合自己系统(32位/64位)的版本即可
    image.png

  4. 将下载下来的压缩包上传到/usr/local目录并进行解压

xz -d mysql-8.0.12-linux-glibc2.12-x86_64.tar.xz

这样解压后得到的是.tar文件,再次进行解压:

tar -xvf mysql-8.0.12-linux-glibc2.12-x86_64.tar

二 centos7下安装MySql_8.0.12

查看机器是否安装过mysql

  • CentOS6
    rpm -qa|grep mysql
    请先执行卸载命令:rpm -e --nodeps mysql-libs

    • CentOS7
      rpm -qa|grep mariadb
      请先执行卸载命令:rpm -e --nodeps mariadb-libs

1. 将上边解压后得到的mysql文件修改名字,方便后边操作

mv mysql-8.0.12-linux-glibc2.12-x86_64 mysql

2. 进入mysql文件夹,创建data目录

cd mysql;
mkdir data;

3.添加用户组(可以不添加)

groupadd mysql
useradd -g mysql mysql

4.设置mysql目录权限,把权限交给mysql用户/用户组

chown -R mysql.mysql /usr/local/mysql/

5.将mysql的脚本服务放进系统服务里

cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

6.修改/etc/my.cnf文件

basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306                                             
socket  = /tmp/mysql.sock
character-set-server = utf8                                                                  
log-error=/var/log/mysqld.log                                                              
pid-file=/home/mysql/mysqld.pid

7.新增log与pid文件

vi /var/log/mysqld.log;#什么也不写,直接保存退出
#赋权限
chown -R mysql /var/log/;
chgrp -R mysql /var/log/;

vi /home/mysql/mysqld.pid;#什么也不写,直接保存退出
chown -R /home/mysql/mysqld.pid;
chgrp -R /home/mysql/mysqld.pid;

8.进入mysql安装目录的bin目录进行初始化

cd /usr/local/mysql/bin/;
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/--datadir=/usr/local/mysql/data/;

9.先进入cd support-files目录里,把support-files/mysql.server 拷贝为/etc/init.d/mysql

cd /usr/local/mysql/support-files/;
cp mysql.server /etc/init.d/mysql;
chmod +x /etc/init.d/mysql;#设置权限

10.将mysql服务设置为开机自启

chkconfig --add mysql

11.做一个软连接,方便在任意目录都能开启/登录mysql

ln -s /usr/local/mysql/bin/mysql /usr/bin;

12.开启mysql

service mysql start

13.登录mysql

  1. 先查看生成的初始密码
    cat /var/log/mysqld.log
    image.png

2.登录

mysql -u root -p

然后会提示输入密码,把上边图片里的密码输入即可;

14.登录进去后第一件事就是修改root用户密码

ALTER user 'root'@'localhost' IDENTIFIED BY 'newpassword';

配置远程登录

mysql>use mysql;#使用mysql库
mysql>select user,host from user;#host是远程主机地址,可以写成%,即所有远程地址;

将mysql数据库user表里的root用户的host改成% ,即所有远程地址都可以访问

update user set host='%' where user='root';

允许root用户进行远程登录

GRANT ALL ON *.* TO 'root'@'%';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的数据库密码';#root是用户名 mysql默认的是root password是密码自己设置 %表示任意主机,也可以指定ip地址

如果登录时出现如下错误:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES);

解决方法:

  1. 配置免密登录
    vi /etc/my.conf  #在任意位置添加下边的一行
    skip-grant-tables  #配置免密码登录
    #保存退出后重启mysql
    service mysql restart;
    
  2. 直接在窗口出入mysql后回车即可登录了
mysql  #直接回车即可登录
  1. 以此执行如下命令
flush privileges;#刷新权限
alter user 'root'@'%'identified by 'root@123';#修改密码为‘root@123’
quit;#退出
  1. 再将my.conf里的免密登录删除,重启mysql即可
    vi /etc/my.conf  #在任意位置添加下边的一行
    #skip-grant-tables  #将这行删除或注释掉
    #保存退出后重启mysql
    service mysql restart;
    

    忘记root用户登录密码

  2. 在/etc/my.cnf里添加免密登录
skip-grant-table
  1. 重启mysql并登录
    service mysql restart;
    mysql -u root -u;  #直接回车登录,密码不用输
    
  2. 刷新权限
flush privileges;
  1. 修改密码
    use mysql;
    alter user 'root'@'%' IDENTIFIED BY 'root';
    
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6天前
|
关系型数据库 MySQL 数据库
docker高级篇(大厂进阶):安装mysql主从复制
docker高级篇(大厂进阶):安装mysql主从复制
60 24
|
1月前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
62 4
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
103 3
|
1月前
|
运维 关系型数据库 MySQL
安装MySQL8数据库
本文介绍了MySQL的不同版本及其特点,并详细描述了如何通过Yum源安装MySQL 8.4社区版,包括配置Yum源、安装MySQL、启动服务、设置开机自启动、修改root用户密码以及设置远程登录等步骤。最后还提供了测试连接的方法。适用于初学者和运维人员。
181 0
|
7月前
|
缓存 关系型数据库 MySQL
百度搜索:蓝易云【CentOS8服务器安装MySQL报错:no match mysql-community-server】
现在,你已经成功安装了MySQL服务器并解决了"no match mysql-community-server"的报错问题。祝你使用愉快!
109 1
|
6月前
|
Linux 数据库管理 Python
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
823 4
|
2月前
|
缓存 Linux 编译器
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
72 0
|
3月前
|
缓存 Linux 开发工具
CentOS7 安装KDE报错的解决方法:Loaded plugins:fastestmirror,langpacks There is no installed group.
CentOS7 安装KDE报错的解决方法:Loaded plugins:fastestmirror,langpacks There is no installed group.
166 0
|
4月前
|
网络协议 Linux
CentOS7 yum安装报错“Could not resolve host: mirrorlist.centos.org;"之解决办法(换源)
CentOS7 yum安装报错“Could not resolve host: mirrorlist.centos.org; Name or service not known“之解决办法(换源)
|
Linux Shell Swift
django(二)centos安装django3.2报错SQLite 3.8.3 or later is required (found 3.7.17)
我正在参加「掘金·启航计划」 Centos安装diango3.2框架请参照《django(一)ubuntu18.04安装框架》 在运行: 复制代码 python3 manage.py runserver 0.0.0.0:81 的时候报错: swift 复制代码 django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17). 报错的大体意思是:对sqlite最低版本的需求的3.8.3,但是现在只找到了3.7.17。
159 1