MySQL学习Day15——MySQL安装与使用

一、Linux下的MySQL的安装与使用:

卸载MySQL:

1.关闭当前MySQL服务:systemctl stop mysql.service

2.查看当前mysql安装状况:rpm -qa | grep -i mysql

3.卸载上述命令查询出的已安装的程序:yum remove mysql-xxx mysql-xxx mysql-xxxx

4.删除mysql相关文件:

(1)查找相关文件:find / -name mysql

(2)删除上述命令查找出的相关文件:rm -rf xxx

5.删除my.cnf配置文件:rm -rf /etc/my.cnf

二、安装MySQL:

1.MySQL的3大版本:

(1)MySQL Community Server社区版本:开源免费,自由下载,但不提供官方支持,适用于大部分普通用户。

(2)MySQL Enterprise Edition企业版本:需付费,不能在线下载。提供了更多的功能和完善的技术支持,更适合于对数据库的功能和可靠性要求较高的客户

(3)MySQL Cluster集群版:开源免费,用于架构集群服务器,可以将几个MySQL Server封装成为一个Server,需要在社区版或企业版的基础上使用

2.下载MySQL指定版本

保留的文件:

(1)mysql-community-common-8.0.25-1.e17.x86_64.rpm

(2)mysql-community-client-plugins-8.0.25-1.e17.x86_64.rpm

(3)mysql-community-libs-8.0.25-1.el7.x86_64.rpm

(4)mysql-community-client-8.0.25-1.e17.x86_64.rpm

(5)mysql-community-server-8.0.25-1.el7.x86_64.rpm

3.CentOS7下检查MySQL依赖:

(1)检查/tmp临时目录权限:chmod -R 777 /tmp

(2)安装前检查依赖:rpm -qa|grep libaio;rpm -qa|grep net-tools;

4.安装过程:

在MySQL的安装文件目录下依次执行:

(1)rpm -ivh mysql-community-common-8.0.25-1.e17.x86_64.rpm

(2)rpm -ivh mysql-community-client-plugins-8.0.25-1.e17.x86_64.rpm

(3)rpm -ivh mysql-community-libs-8.0.25-1.el7.x86_64.rpm

(4)rpm -ivh mysql-community-client-8.0.25-1.e17.x86_64.rpm

(5)rpm -ivh mysql-community-server-8.0.25-1.el7.x86_64.rpm

执行如下命令查看MySQL版本:mysql --version

服务初始化:mysql --initialize --user-mysql

查看密码:cat /var/log/mysqld.log

启动MySQL服务:systemctl start mysqld

设置开机自启动:system enable mysqld

三、字符集相关操作:

1.修改MySQL5.7字符集:

在MySQL8.0之前,默认字符集为latin1。utf8字符集指向的是utf8mb3,网站开发人员在数据库设计时往往会将编码修改为utf8字符集。如果未修改则会出现乱码的问题。从MySQL8.0开始,数据库的默认编码变为utf8mb4,从而避免上述的乱码问题。

查看默认使用的字符集:show variables like '%char%';

修改字符集:vim /etc/my.cnf;在文件的最后添加character_set_server = utf8;

2.已有数据库/数据表的字符集变更

alter database/table 数据库名/数据表名 character set 'utf8';

3.各个级别的字符集:

(1)服务器级别字符集

(2)数据库级别字符集:如果创建数据库未指明数据库级别的字符集时则会使用服务器级别的字符集和比较规则作为数据库的字符集和比较规则

(3)表级别:如果创建数据表未指明数据表级别的字符集时则会使用当前数据库级别的字符集和比较规则作为数据表的字符集和比较规则

(4)列级别:如果创建数据表中的字段未指明列级别的字符集时则会使用当前数据表级别的字符集和比较规则作为当前列级别的字符集和比较规则

变量名称对应含义
character_set_server服务器级别的字符集
character_set_database当前数据库的字符集
character_set_client服务器解码请求时使用的字符集
character_set_connection服务器处理请求时会把字符串从character_set_client转变为character_set_connection
character_set_results服务器向客户端返回数据时使用的字符集

4.请求到响应过程中字符集的变化

(1)客户端发送请求所使用的字符集:一般情况下客户端所使用的字符集和当前操作系统的字符集一致,不同的操作系统使用的字符集可能不一样

(2)服务器接收到客户端发送来的请求实际上是一串二进制的字节,它会认为这串字节采用的字符集是character_set_client,然后把这串字节转换为character_set_connection字符集编码的字符。

(3)根据表中对应字段的字符集查找相应的记录,character_set_connection转换为表中对应字段的字符集

(4)将查询结果从具体的列使用的字符集转换为character_set_results

(5)使用操作系统的字符集解码响应的字节串

五、SQL大小写规范:

1.Windows和Linux平台的区别:

在SQL中,关键字和函数名是不区分大小写的,不过Windows系统默认大小写不敏感,Linux大小写敏感。可通过查看变量lower_case_table_names判断是否区分大小写,其中:

(1).lower_case_table_names = 0表示大小写敏感

(2).lower_case_table_names = 1表示大小写不敏感,创建的表和数据库都是以小写形式放在磁盘上,对于sql语句都是转换为小写对表和数据库进行查找

(3).lower_case_table_names = 2表示创建的表和数据库依据语句上的格式存放,凡是查找都是转换为小写进行。

MySQL在LInux下的数据库名、表名、列名的大小写规则:

(1)数据库名、表名、表的别名、变量名都是严格区分大小写的

(2)关键字、函数名在SQL中不区分大小写

(3)列名与列的别名在所有情况下都是忽略大小写的

SQL编写建议:

(1)关键字和函数名称全部大写

(2)数据库名、表名、表别名、字段名、字段别名等全部小写

(3)SQL语句必须以分号结尾

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[ai笔记7] google浏览器ai学习提效定制优化+常用插件推荐

欢迎来到文思源想的ai空间,这是技术老兵重学ai以及成长思考的第7篇分享! 工欲善其事必先利其器,为了ai学习的效能提升,放假期间对google浏览器做了一次系统整改,添加了一些配置和插件,这里既有一些显示、主…

Codeforces Round 919 (Div. 2)题解(A-E)

https://codeforces.com/contest/1920 A Satisfying Constraints 链接&#xff1a;A - Satisfying Constraints 代码 #include <bits/stdc.h> using namespace std; int main() {int T;cin >> T;while(T--){int n;scanf("%d", &n);vector<int&…

C#一维数组排序方法:选择排序法

目录 一、数组元素常见的排序法 1.选择排序法 二、实例1&#xff1a;选择排序法 1.源码 2.生成效果 一、数组元素常见的排序法 常见的排序法&#xff1a;选择排序法、冒泡排序法、快速排序法、直接插入法、希尔排序法、Array.Sort方法。 1.选择排序法 通过遍历实现排序&…

D. Divisible Pairs

思路&#xff1a;我们预处理出每个数分别摸上xy的值&#xff0c;用map存一下&#xff0c;然后遍历每个数&#xff0c;如果a b是x的倍数的话&#xff0c;那么他们模x的值相加为x&#xff0c;如果a - b是y的倍数的话&#xff0c;那么他们的模y的值相等。 代码&#xff1a; voi…

BUGKU-WEB bp

题目描述 题目截图如下&#xff1a; 进入场景看看&#xff1a; 解题思路 提示说&#xff1a;弱密码top1000&#xff1f;z???(爆破?)先看看源码有没有提示 相关工具 Burp Suit 爆破top1000字典&#xff0c;点击下载 解题步骤 随便测试账号密码admin、admin 得到提…

如何将自己的 CSDN 专栏文章导出并用于 Hexo 博客(一)

文章目录 效果展示说明利用工具整体思路代码 效果展示 说明 看了看网上很少做这个功能&#xff0c;但是我有这个需求&#xff0c;就抽出事件写了个简单的工具目前只能导出专栏的文章&#xff0c;不过思路类似并没有做 Promise 失败的重新发送&#xff0c;代码仍然待完善&#…

前端秘法基础式(CSS)(第一卷)

一.认识CSS CSS 指的是层叠样式表&#xff08;Cascading Style Sheets&#xff09;&#xff0c;它是一种用于描述网页外观和布局的语法 CSS 可以定义网页中元素的字体、颜色、大小、位置、背景等样式&#xff0c;使网页具有美观的外观和统 一的风格。 通过将 CSS 样式表与 HTML…

《VulnStack》ATTCK-1

title: 《VulnStack》ATT&CK-1 date: 2024-01-29 14:53:49 updated: 2024-02-14 18:55:49 categories: WriteUp&#xff1a;Cyber-Range excerpt: 主机发现、端口扫描&#xff0c;服务探测&#xff0c;操作系统探测、nmap 漏洞库扫描、网站首页信息泄露、msf 渗透与信息收集…

题解37-42

101. 对称二叉树 - 力扣&#xff08;LeetCode&#xff09; 给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 示例 1&#xff1a; 输入&#xff1a;root [1,2,2,3,4,4,3] 输出&#xff1a;true示例 2&#xff1a; 输入&#xff1a;root [1,2,2,null,3,nul…

P1219 八皇后 (dfs 表格坐标关系)

一个正常的dfs&#xff08;数据范围1-13&#xff09;&#xff0c;发现一条对角线上&#xff0c;分别符合和与差相等。因为有负数&#xff0c;这里我最开始开的是map&#xff0c;发现卡了最后一个点TLE&#xff0c;记录一下时间复杂度&#xff08; map&#xff0c;set的时间复杂…

前端工程化面试题 | 09.精选前端工程化高频面试题

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

图像卷积、步长、填充、特征图、多通道卷积、权重共享、感受野、池化

图像卷积、步长、填充、特征图、多通道卷积、权重共享、感受野、池化 卷积神经网络的一些基本概念&#xff1a;图像卷积、步长、填充、特征图、多通道卷积、权重共享、感受野、池化 1.图像卷积、步长、填充 图像卷积&#xff1a;卷积核矩阵在一个原始图像矩阵上 “从上往下、…