首先如果当前linux中没有wget,那么我们可以考虑使用sudo apt-get install wget来安装wget命令


Ubuntu自带的源只能安装MySQL5.7版本,这里去MySQL官网安装MySQL8.0.23版本

登录MySQL官网

https://www.mysql.com/downloads/

点击“DOCUMENTATION”——“MySQL Server”——“Installing and Upgrading MySQL”——“2.5 Installing MySQL on Linux

点击:2.5.2 Installing MySQL on Linux Using the MySQL APT Repository

点击:A Quick Guide to Using the MySQL APT Repository.

点击:Steps for a Fresh Installation of MySQL

点击:https://dev.mysql.com/downloads/repo/apt/.

点击:Download

右键:No thanks, just start my download.  复制链接地址

在主机上wget 这个链接地址:配置deb文件链接

wget https://dev.mysql.com/get/mysql-apt-config_0.8.23-1_all.deb

导入GPG密匙(我的版本8.0.23似乎并不要导入,如果你是8.0.28以上版本,应该考虑导入,其他未知)

sudo apt-key adv --keyserver keyserver.ubuntu.com--recv-keys 3A79BD29

注意MySQL8.0.28及更高版本包的KeylD为3A79BD29,如上所示。对于早期的MySQL版本,keylD是5072E1F5。使用不正确的密钥可能会导致密钥验证错误。

安装deb文件

ls
dpkg -i mysql-apt-config_0.8.23-1_all.deb

选第一项:TAB 到  OK处 回车

选mysql-8.0

选OK 再TAB 到 OK 回车

安装完成,会有报错,先忽略

执行apt-get update 更新

执行apt-get install mysql-server

选择y

输入密码

建议选择第二种兼容模式连接数据库,不然老终端设备可能无法兼容

安装配置完成,查看mysql服务状态

systemctl status mysql.service

安装完成。


配置安全设置:

输入

sudo mysql_secure_installation

询问是否对密码验证组件进行配置?Y 继续

Would you like to setup VALIDATE PASSWORD component?    #是否对密码验证组件进行配置

Press y|Y for Yes, any other key for No: Y    #是

There are three levels of password validation policy:    #这里有3个密码强度等级

LOW    Length >= 8    #密码8位
MEDIUM Length >= 8, numeric, mixed case, and special characters #8位+数字+大小写字幕混合+特殊字符
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file #Medium基础上+比对字典 Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0 #0是低 1是种 2是高

是否移除匿名用户?

是否禁用root用户远程登陆?

是否移除测试数据库?

是否重载权限表?(其实是问你是否立刻生效)


原文:

root@Zabbix-Server:~# sudo mysql_secure_installation

Securing the MySQL server deployment.

Enter password for user root: 

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component? Press y|Y for Yes, any other key for No: y There are three levels of password validation policy: LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0
Using existing password for root. Estimated strength of the password: 50
Change the password for root ? ((Press y|Y for Yes, any other key for No) : n ... skipping.
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment. Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success. Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network. Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success. By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment. Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
- Dropping test database...
Success. - Removing privileges on test database...
Success. Reloading the privilege tables will ensure that all changes
made so far will take effect immediately. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success. All done!
root@Zabbix-Server:~#

测试:本地连接数据库

root@Zabbix-Server:~# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 14
Server version: 8.0.30 MySQL Community Server - GPL Copyright (c) 2000, 2022, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show schemas;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.33 sec) mysql> exit
Bye
root@Zabbix-Server:~#

MySQL数据库基础常用命令8.0版本适用

#查询数据库账户
select user, host from mysql.user;
#删除账户 'zabbix'
drop user 'zabbix'@'%';
#查询数据库
show databases;
#删除数据库zabbix;
drop database zabbix;
#修改账户密码
alter user 'zabbix'@'%' identified by 'Qqqq1234.com';

ubuntu安装的mysql,默认密码保存在cat /etc/mysql/debian.cnf

root@JumpServer-DB-T01:~# cat /etc/mysql/debian.cnf
# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host = localhost
user = debian-sys-maint
password = X588hw8sErd0PN3k
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = debian-sys-maint
password = X588hw8sErd0PN3k
socket = /var/run/mysqld/mysqld.sock
root@JumpServer-DB-T01:~#

ubuntu安装的mysql,默认配置文件保存在/etc/mysql/mysql.conf.d/mysqld.cnf

root@JumpServer-DB-P01:/opt# cat /etc/mysql/mysql.conf.d/mysqld.cnf
#
# The MySQL database server configuration file.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html # Here is entries for some specific programs
# The following values assume you have at least 32M ram [mysqld]
#
# * Basic Settings
#
user = mysql
# pid-file = /var/run/mysqld/mysqld.pid
# socket = /var/run/mysqld/mysqld.sock
# port = 3306
# datadir = /var/lib/mysql # If MySQL is running as a replication slave, this should be
# changed. Ref https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_tmpdir
# tmpdir = /tmp
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 0.0.0.0
mysqlx-bind-address = 0.0.0.0
#
# * Fine Tuning

CentOS安装方法如下:

https://downloads.mysql.com/archives/community/

下载tar文件

Ubuntu 安装MySQL 8.0.23及以上版本的更多相关文章

  1. 【Linux】Ubuntu安装Mysql 8.0

    1.下载Mysql的安装配置,http://dev.mysql.com/downloads/repo/apt/ 2.执行配置配置文件 sudo dpkg -i mysql-apt-config_0.* ...

  2. Ubuntu下安装MySQL 5.6.23

    Ubuntu下安装MySQL 5.6.23 1.下载相应Linux-generic的源代码包.解压,将解压后的文件夹重命名为mysql.移动到/usr/local文件夹下: tar –xzf mysq ...

  3. 在Ubuntu 18.04 安装 MySQL 8.0

    在Ubuntu 18.04 安装 MySQL 8.0 ① 登入 mysql 官网,在官网中下载 deb 包,点击该链接,即可下载. https://dev.mysql.com/downloads/re ...

  4. ubuntu安装mysql

    好记性不如烂笔头,记录一下,ubuntu安装mysql的指令. 安装MySQL: sudo apt-get install mysql-server sudo apt-get install mysq ...

  5. ubuntu安装mysql后不能远程访问的方法

    ubuntu安装mysql后不能远程访问的方法1.mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassw ...

  6. ubuntu安装mysql并使用Navicat连接

    今天配置了一下自己的服务器,发现网上很多教程都有点老,而且不是很全.干脆就写一篇Ubuntu安装mysql,并用Navicat连接的全流程 一.安装mysql 1. sudo apt-get inst ...

  7. centos 8及以上安装mysql 8.0

    本文适用于centos 8及以上安装mysql 8.0,整体耗时20分钟内,不需要FQ 1.环境先搞好 systemctl stop firewalld //关闭防火墙 systemctl disab ...

  8. Ubuntu 安装 Mysql 5.6 数据库

    Ubuntu 安装 Mysql 5.6 数据库 1)下载: mysql-5.6.13-debian6.0-x86_64.deb http://dev.mysql.com/downloads/mirro ...

  9. Ubuntu安装mysql之后,编译找不到头文件

    解决Ubuntu安装mysql之后找不到mysql.h问题   安装: sudo apt-get install libmysqlclient-dev   编译: gcc test.c -o test ...

  10. Linux Deploy Ubuntu安装MySQL

    一.在Android手机安装Linux 二.Ubuntu安装Mysql 建议在root用户上操作 sudo su 输入密码 (一)安装mysql 1. sudo apt-get install mys ...

随机推荐

  1. 关于oop的一点回忆

    昨天在一个程序员行业群里看到别人发了一条消息, 大意是:要做好封装啦,不要随便用public啦,不要随便改别人代码啦. 说的好像就是我,因为,我这辈子最后悔的一件事情之一就是手贱改动别人代码. 那大概 ...

  2. Sealos 新功能“定时任务”上线(省钱大杀器)

    流量高峰时段资源不足?低流量时段服务器成本过高? 本着好用又省钱的目标,sealos 推出 定时任务 功能,保证稳定的同时降低成本. Sealos 国内集群:https://cloud.sealos. ...

  3. .NET 8 的 green thread 异步模型被搁置了

    .NET 平台上的green thread 异步模型实验结果最近出来了,具体参见:https://github.com/dotnet/runtimelab/issues/2398 ,实验结果总结一下就 ...

  4. Solution -「洛谷 P3600」随机数生成器

    Desciption Link. 给定一个值域在 \([1,x]\) 的长度为 \(n\) 的序列(由随机数构成),求给定一组区间中的最小值的最大值的期望. Solution 记: \[w=\max\ ...

  5. PostgreSQL学习笔记-5.基础知识:触发器、索引

    PostgreSQL 触发器是数据库的回调函数,它会在指定的数据库事件发生时自动执行/调用. 下面是关于 PostgreSQL 触发器几个比较重要的点: PostgreSQL 触发器可以在BEFORE ...

  6. Markdown 包含其他文件静态渲染工具

    1. 前言 在 GitHub 上写文档,很多时候要插入 uml,像 mermaid 这种可以直接在 GitHub/GitLab 中渲染的一般直接写个 code block 进去,但是这样造成一个问题就 ...

  7. 使用PasteSpider把你的代码升级到服务器的Docker/Podman上,K8S太庞大,PasteSpider极易上手!

    如果你的服务器的内存小于16GB,那么K8S就和你无缘了,但是你可以使用PasteSpider来实现发布你的项目到服务器上! PasteSpider是一个运维工具,使用NET编写的,部署于服务器的Do ...

  8. Redis的速度不够用?为什么你应该考虑使用 KeyDB,一个更快、更强大、更灵活的开源数据库

    你是否正在使用 Redis 作为您的数据结构存储,享受它的高性能.高可用的特性?如果是这样,那么你可能会对 KeyDB 感兴趣. 什么是 KeyDB? KeyDB 一个由 Snap 提供支持.专为扩展 ...

  9. 学习一下Java的ArrayList和contains函数和扩容机制

    起因 在Leetcode上做题写了两种暴力解法,但是执行效率上不太一样. 时间上差很远,内存虽然差不多但是前者击败30%,后者击败94%.这两种解法区别是用一条ArrayList还是两条来存数据,所以 ...

  10. 我们在开发第一个flutter小程序时需要注意什么

    Flutter这些年发展的很快,特别是在 Google 持续的加持下,Flutter SDK 的版本号已经来到了 3开头,也正式开始对 Windows.macOS 和 Linux 桌面环境提供支持.如 ...