KylinV10 安装 MySQL 教程(可防踩雷)

news2024/9/24 21:27:51

KylinV10 安装 MySQL 教程(可防踩雷)

1、直接用 apt 快捷安装 MySQL

$ sudo apt-get update #更新软件源
$ sudo apt-get install mysql-server #安装mysql

然后你会发现,KylinV10 安装畅通无阻,并没有设置密码的场景,于是你一登陆,发现有密码(?哪来的密码)

kylin@kylinV10:~/桌面$ mysql -u root -p
Enter password: 
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
kylin@kylinV10:~/桌面$ mysql -u root -p
Enter password: 
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

2、KylinV10 密码正确也无法登录的情况

这里有点问题的是,银河麒麟系统有点不同,按网上一些改密码的教程,会发现,密码该成功了,输入密码正确也无法登录,输入密码半天连接不了,也不知道是当时设置密码的时候打错了,两次都打错不应该啊。

1703062515988

其实这里主要原因就是因为 kylinV10 的加密方式不一样,MySQL 一般是 mysql_native_password 认证方式,但是 kylinV10 的认证方式是 auth_socket。所以要先改这个,接下来教大家如何改!

1703062674335

3、修改认证方式步骤

具体操作如下:

1、在 mysqld.cnf 最后一行里添加 skip-grant-tables

# 使用 gedit 或者 vim 命令都可以(二选一即可)
sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf
# 使用 vim 命令
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

直接在最后一行添加

skip-grant-tables
# 如下图

1703062962414

保存后,退出,不用去管报什么错误警告,比如下图这样的

在这里插入图片描述

2、重启 MySQL

sudo service mysql restart

3、连接 MySQL

# 只需要输入mysql就行,其他不用
mysql

4、切换到 mysql 数据库

use mysql;

5、查看一下加密方式

select user, plugin from user;
1703062674335

如果是如图 auth_socket 需要将其修改为 mysql_native_password 这就是为什么我改了几次密码,都还是无法连接成功的原因:身份验证的插件是错的。

6、修改加密认证方式

update user set plugin='mysql_native_password' where user='root';
flush privileges;

7、修改密码

ALTER user 'root'@'localhost' IDENTIFIED BY '123456'; //123456是新密码,改成你自己的
# 注意 MySQL8.0是不支持 password() 函数的,所以以下命令是无效的 
# 如果你安装的是MySQL5.x可以执行下面命令
update user set authentication_string=password("123456"),plugin='mysql_native_password' where user='root';

8、退出

exit;

9、去掉 skip-grant-tables 重启 MySQL 服务

sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf
# 可以选择删除或者注释掉,注释的话在前面加个 # 就行了

10、重启 MySQL 服务

sudo service mysql restart

11、完整的过程图

1703063339930

4、还不行?还有招

1、初始化配置,设置密码

sudo mysql_secure_installation

然后下面步骤有点多,注意认真看

# 1
Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD PLUGIN 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 plugin?
# 这里我选择了 No
Press y|Y for Yes, any other key for No: No
# 2
Please set the password for root here...

New password: (输入密码)

Re-enter new password: (重复输入)
# 3
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.
# 我选择了 No
Remove anonymous users? (Press y|Y for Yes, any other key for No) : No 
# 4
Normally, root should only be allowed to connect from

'localhost'. This ensures that someone cannot guess at

the root password from the network...
# 我选择了 Yes
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Yes
#5

By default, MySQL comes with a database named 'test' that

anyone can access...
# 我选择了 No
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : No
#6

Reloading the privilege tables will ensure that all changes

made so far will take effect immediately.
# 我选择了 Yes
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Yes

2、检查MySQL状态

systemctl status mysql.service

3、在终端连接

mysql -u root -p;

# 输入密码

5、sqoop 导入 MySQL 中文乱码问题

(可以插入中文,但不能用sqoop导入中文)导致导入时中文乱码的原因是character_set_server默认设置是latin1

可以单个设置修改编码方式set character_set_server=utf8;但是重启会失效,建议按以下方式修改编码方式。

(1)编辑配置文件。

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 或者
sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf

(2)在[mysqld]下添加一行

character_set_server=utf8

在这里插入图片描述

(3)重启MySQL服务。

service mysql restart

(4)查看character_set_server设置

show variables like "char%";
# 如下图,可以看到 character_set_server 已经变成了 utf8 了

64529576.webp" alt=“1703064529576” style=“zoom: 50%;” />

(3)重启MySQL服务。

service mysql restart

(4)查看character_set_server设置

show variables like "char%";
# 如下图,可以看到 character_set_server 已经变成了 utf8 了

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1324449.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue: node-sass 无法为当前环境找到绑定, Windows64-bit, 重新安装node-sass失败

参照两位大神的文章总结: 参考1: 解决Node Sass could not find a binding for your current environment: Windows 64-bit with Node.js 14.x-CSDN博客 参考2: 前端开发环境搭建踩坑笔记——npm install node-sass安装失败的解决方案-CSDN博客 总结: 管理员运行 先卸载n…

测试自动化平台 | 测试开发工程师的进阶之路

一、测试工程师的现状 很多测试小伙伴在工作中有时会比较迷茫,不知该怎样突破瓶颈,更好的发展。 那么测试人员究竟该如何打破瓶颈继续向上提升呢?如果你苦于不知所措,又满怀斗志向上的话,不妨一起聊聊。测试职业发展…

Compose 组合项 - 滑动列表 LazyColumn、LazyRow

一、概念 可滚动,类似RecyclerView( Column、Row 用 Modifier 设置滚动是相当于ScrollView)。 从 Navigation 返回后丢失状态(跳到头部) :将 LazyListState 提升到 Screen 级别,不用放到 ViewMo…

【Axure RP9】实现登入效验及实现左侧菜单栏跳转各页面

目录 一 效验简介 1.1 校验好处 1.2 应用场景 二 登入校验 2.1 效果 2.2 实现流程 三 左边菜单栏左侧菜单栏跳转各页面 3.1 效果 3.2 实现图 一 效验简介 1.1 校验好处 提高安全性: 在传统的用户名和密码登录的基础上,引入了另一种或多种验证…

MyBatis-Plus是什么?能干嘛?

MyBatis-Plus是一个基于MyBatis的增强工具,旨在简化开发、提高效率。它提供了通用的mapper和service,可以在不编写任何SQL语句的情况下,快速实现对单表的CRUD、批量、逻辑删除、分页等操作。 MyBatis-Plus的主要特性包括: 无侵入…

【PostgreSQL内核学习(十八)—— 存储管理(存储管理的体系结构)】

存储管理 概述存储管理器的体系结构存储管理器的主要任务读写元组过程 声明:本文的部分内容参考了他人的文章。在编写过程中,我们尊重他人的知识产权和学术成果,力求遵循合理使用原则,并在适用的情况下注明引用来源。 本文主要参考…

最新鸿蒙HarmonyOS 使用Progress、Toggle开发一个接单界面

Progress 进度条组件,用于显示内容加载或操作处理等进度。 接口 Progress(options: {value: number, total?: number, type?: ProgressType}) Toggle组件提供勾选框样式、状态按钮样式及开关样式。 接口 Toggle(options: { type: ToggleType, isOn?: boolean …

SpringBoot actuator应用监控

文章目录 引入依赖端点(Endpoints)端点种类端点开启配置暴露端点手动暴露端点 端点保护引入spring security依赖配置security 端点响应缓存访问端点路径修改CORS跨域支持健康信息(/actuator/health)自定义healthInfo 应用信息(/actuator/info) 监控信息可视化引入依赖配置查看配…

【LeetCode刷题】--245.最短单词距离III

245.最短单词距离III class Solution {public int shortestWordDistance(String[] wordsDict, String word1, String word2) {int len wordsDict.length;int ans len;if(word1.equals(word2)){int prev -1;for(int i 0;i<len;i){String word wordsDict[i];if(word.equa…

Unity中Shader测试常用的UGUI功能简介

文章目录 前言一、锚点1、锚点快捷修改位置2、使用Anchor Presets快捷修改3、Anchor Presets界面按下 Shift 可以快捷修改锚点和中心点位置4、Anchor Presets界面按下 Alt 可以快捷修改锚点位置、UI对象位置 和 长宽大小 二、Canvas画布1、UGUI中 Transform 变成了 Rect Transf…

One Wire协议解析

引言 One Wire是一种串行扩展总线技术&#xff0c;由DALLAS公司推出。它采用一根信号线进行通信&#xff0c;既传输时钟信号又传输数据&#xff0c;而且能够进行双向通信。由于其节省I/O口线、资源结构简单、成本低廉、便于总线扩展和维护等诸多优点&#xff0c;One Wire在许多…

go语言指针变量定义及说明

go语言指针主要需要记住两个特殊符号&#xff0c; 一个是 & 用来获取变量对应的内存地址 另一个是 * 用来获取指针对应的变量值 下面是个最简单的go语言指针说明 package mainimport "fmt"//指针为内存地址func main() {var a string "指针对应的变量&…

2023数字化发展推动家庭教育走向科学评价

近年来,随着人工智能、大数据、区块链等新一代数字技术的教育应用,在实践探索中形成了无感式数据采集、智能化诊断分析、即时性精准反馈等新样态,为破解教育评价难题提供了新的可能。 过去,传统教育评价体系是学校以及家庭教育最核心的焦虑和压力来源之一。“唯分数论”以及“…

实验一传统的结构化的软件工程方法、实验二面向对象的软件工程、实验三软件测试

背景&#xff1a; 实验一 传统的结构化的软件工程方法 1实验目的 了解传统的软件工程方法的基本原理&#xff0c;掌握软件生命周期的全过程依次划分为需求分析、总体设计、详细设计、编码、测试、维护等几个重要阶段。每个阶段所要完成的任务以及提交的文档。 2实验内容 …

手把手教你在 windows 上安装 Docker

前言 大家好&#xff0c;我是潇潇雨声&#xff0c;今天为大家带来一篇关于在 Windows 环境下使用 Docker 的教程。对于 Docker&#xff0c;我们可以简单地将其看作一种方便的软件安装方式&#xff0c;而无需深入涉及其复杂的概念。选择使用 Docker 主要是为了省事&#xff0c;比…

爬虫请求指纹检测与绕过 TLS/JA3/Http2

说明&#xff1a;仅供学习使用&#xff0c;请勿用于非法用途&#xff0c;若有侵权&#xff0c;请联系博主删除 作者&#xff1a;zhu6201976 一、什么是请求指纹检测&#xff1f; TLS/JA3、HTTP/2 指纹检测是一种网络流量分析技术&#xff0c;用于识别和分析网络通信中使用的加密…

阿里云k8s集群搭建

文章目录 一、安装前准备1.环境2.k8s集群规划 二、k8s 安装1. centos基础设置2. docker 安装3. k8s安装3.1 添加阿里云 yum 源3.2 安装 kubeadm、kubelet、kubectl3.3 部署 Kubernetes Master3.4 加入 Kubernetes Node3.5 部署 CNI 网络插件3.6 测试 kubernetes 集群 一、安装前…

MATLAB - 最优控制(Optimal Control)

系列文章目录 前言 - 什么是最优控制&#xff1f; 最优控制是动态系统满足设计目标的条件。最优控制是通过执行以下定义的最优性标准的控制律来实现的。一些广泛使用的最优控制方法有&#xff1a; 线性二次调节器 (LQR)/线性二次高斯 (LQG) 控制 模型预测控制 强化学习 极值…

管理类联考——数学——真题篇——按题型分类——充分性判断题——蒙猜A/B

老规矩&#xff0c;看目录&#xff0c;平均3-5题 文章目录 A/B2023真题&#xff08;2023-19&#xff09;-A-选项特点&#xff1a;两个等号&#xff1b;-判断需联立的难易&#xff1a;难&#xff0c;看着感觉需要联立&#xff0c;所以判断联立需要有理论支撑&#xff0c;不然还…

【AI美图】第08期效果图,AI人工智能3D效果图,让创意和想象力在一张简单的底图上绽放!

让创意和想象力在一张简单的底图上绽放 探索未来&#xff0c;体验无限可能&#xff01;我们的AI技术可以将一张简单的底图转化为令人惊叹的3D效果图&#xff0c;让你瞬间拥有超凡的视觉体验。无论是房屋建筑、汽车设计、游戏开发&#xff0c;还是艺术创作&#xff0c;我们的AI…