mysql数据库(一)

系列文章目录

文章目录

  • 系列文章目录
  • 一、数据库介绍
  • 二、mysql介绍
    • 2.1mysql配置
    • 2.2破解密码
    • 2.3my.ini的配置
  • 三、mysql的基本操作

一、数据库介绍

数据库其本质就是一个事先写好的socket服务端与客户端程序,使用mysql是为了解决数据共享、查询效率以及数据安全性等一系列问题。总的来说使用数据库可以把程序员从数据管理的繁琐任务中解脱出来,专注于自己程序逻辑的编写。

数据库中的一些基本概念:

  • 数据:数据是描述事物的符号,例如文字、图像、声音等等。
  • 数据库:数据库是按一定规则存放数据的仓库。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并且可以为用户所共享。
  • 数据库管理系统(DBMS):数据库管理系统是科学地组织和存储数据,高效获取和维护数据的一个软件,如MySQL、Oracle、SQLite等等。
  • 数据库服务器:数据库服务器是运行数据库管理软件的计算机。
  • 如下方表格所示,其中首行的id、name、age称为字段;记录具体数据的各行称为记录;而存放字段和记录的表格称为表;存放多张表的地方称为一个数据库。
idnameage
1张三20
2李四30

数据库可以分为关系型数据库和非关系型数据库。关系型数据库有mysql、oracle等;非关系型数据库有redis、memcache、mongodb等。
简单来说两种类型的数据库区别在于关系型数据库存储数据需要有表的结构,而非关系型数据库是key-value的形式存储数据的。

二、mysql介绍

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

2.1mysql配置

mysql的下载过程本文就不再介绍了,下载完mysql以后可以打开mysql的根目录,进入bin文件夹中,其中有mysql.exe文件为mysql客户端的启动程序,mysqld.exe为mysql服务端的启动程序,不过我们一般不在bin目录中启动mysql。

我们一般需要配置mysql的服务端,将其设置为开机自动启动。(以windows为例)首先以管理员身份启动终端,在终端输入mysqld --install(mysqld必须配置到环境变量中,否则要输入mysqld的绝对路径),之后mysql的服务端会被配置到windows的服务中,如果想解除配置可以在终端输入mysqld --remove。

完成上述步骤后需要输入net start mysql打开mysql的服务,当然也可以打开windows中的服务找到mysql右击手动启动。如果想关闭mysql的服务需要输入net stop mysql。

接下来在终端输入mysqladmin -uroot password 123 可以设置密码,如果是想修改密码需要输入mysqladmin -uroot -p123 password 456 其中-p后的是原始密码,password后的是新密码。
输入mysql -uroot -p 123表示以root用户身份登录,输入mysql -h172.30.0.1 -uroot -p 123,-h后为自定义的登录ip和端口。

2.2破解密码

在Windows平台下有以下两种方式破解密码:
方式一:

#1 关闭mysql
#2 在cmd中执行:mysqld --skip-grant-tables
#3 在cmd中执行:mysql
#4 执行如下sql:
update mysql.user set authentication_string=password('') where user = 'root';
flush privileges;#5 tskill mysqld #或taskkill -f /PID 7832
#6 重新启动mysql

方式二:

#1. 关闭mysql,可以用tskill mysqld将其杀死
#2. 在解压目录下,新建mysql配置文件my.ini
#3. my.ini内容,指定
[mysqld]
skip-grant-tables#4.启动mysqld
#5.在cmd里直接输入mysql登录,然后操作
update mysql.user set authentication_string=password('') where user='root and host='localhost';flush privileges;#6.注释my.ini中的skip-grant-tables,然后启动myqsld,然后就可以以新密码登录了

在Linux平台下有以下两种方式破解密码:
方式一:

[root@egon ~]# rm -rf /var/lib/mysql/mysql #所有授权信息全部丢失!!!
[root@egon ~]# systemctl restart mariadb
[root@egon ~]# mysql

方式二:

[root@egon ~]# vim /etc/my.cnf    #mysql主配置文件
[mysqld]
skip-grant-table
[root@egon ~]# systemctl restart mariadb
[root@egon ~]# mysql
MariaDB [(none)]> update mysql.user set password=password("123") where user="root" and host="localhost";
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> \q
[root@egon ~]# #打开/etc/my.cnf去掉skip-grant-table,然后重启
[root@egon ~]# systemctl restart mariadb
[root@egon ~]# mysql -u root -p123 #以新密码登录

2.3my.ini的配置

找到mysql根路径中的my.ini文件(如果没有就新建my.ini),可以根据需要进行以下的配置:

[mysqld]
port=3306
#配置服务端的字符编码
character-set-server=utf8mb4
character-set-client-handshake=FALSE
init_connect='SET NAMES utf8mb4'
collation-server=utf8mb4_unicode_ci
[client]
#client是针对所有客户端的
port=3306
#配置client客户端字符编码
default-character-set=utf8mb4
[mysql]
#mysql仅针对mysql客户端
port=3306
#配置字符编码
default-character-set=utf8mb4
#配置用户密码,配置完以后在终端登录mysql客户端可以只输入mysql
user="root"
password="123"

三、mysql的基本操作

数据库的操作

    新建数据库:#配置完字符编码以后可以不写charset utf8mb4create database day charset utf8mb4;修改数据库编码:alter database day charset gbk;查看现有数据库:show databases;删除数据库:drop database day;

表的操作

	首先选择数据库:use day;新建表:create table t1(id int,name varchar(16));修改表名:alter table t1 rename t2;修改表的字段类型:alter table t2 modify name varchar(10);查询现有的表:show tables;查询表的数据类型:desc t2;删除表:drop table t2;清空表中数据(包括自增值):truncate table day;清空表中数据:delete * from day;

记录的操作:

    use day;create table t1(id int,name varchar(16));插入记录:insert t1 values(1,"e"),(2,"t"),(3,"j");修改记录:update t1 set name = "lili" where id = 2;查询记录:select * from t1;select name from t1;select id,name from t1 where id >= 2 and name==”lili“;删除记录:delete from t1 where id = 2;

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

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

相关文章

产品人必读书籍丨这本书告诉了我在AI时代如何成为一名顶级PM!!

《人工智能产品经理》——AI时代的PM修炼手册,这是一本不太工具的工具书。 很多人不了解产品经理需要具备的能力和素质。那么产品经理人工智能呢?这就更懵了,全是新词汇组成的新职业,到底怎样才算合格的人工智能产品经理&#x…

免费文件夹加密工具

1、去掉了miniExcel引用包,删除掉了excel配置文件 2、增加了密码登录功能,可以修改密码 3、使用sqlite3数据库来保存文件夹列表和用户密码,用户密码采用md5加盐 4、使用了 antdui来美化下界面 5、未解锁文件平不能被移除 其他还是保持老样…

第四届计算机图形学、人工智能与数据处理国际学术会议

在线投稿:学术会议-学术交流征稿-学术会议在线-艾思科蓝 第四届计算机图形学、人工智能与数据处理国际学术会议(ICCAID 2024)将于 2024年12月13日-15日在中国南昌举行。本次会议主要围绕“计算机图形学、人工智能与数据处理”的最新研究…

辐射发射测试新境界:深入解析TS-RadiMation套件多种操作方法(一)

TS-RadiMation套件作为辐射发射测试的得力助手,支持多种测试方法。 多频段手动模式电波暗室固定高度测试GTEM小室测试手动模式(单频段) 本文将详细介绍如何操作手动模式及手动模式(单频段)这两种模式,助您…

基于matlab的基于Tent混沌映射改进的麻雀搜索算法SSA优化BP神经网络预测

基于Tent混沌映射改进的麻雀搜索算法SSA优化BP神经网络预测 1 普通BP网络 代码如有需要,联系 596520206 %构建网络netnewff(inputn,outputn,hiddennum);% 网络参数net.trainParam.epochs100; % 训练次数net.trainParam.lr0.01; % 学习速…

[前端][基础]JavaScript

1,JavaScript简介 JavaScript 是一门跨平台、面向对象的脚本语言,而Java语言也是跨平台的、面向对象的语言,只不过Java是编译语言,是需要编译成字节码文件才能运行的;JavaScript是脚本语言,不需要编译&…

10:00面试,10:08就出来了,问的问题有点变态。。。

从小厂出来,没想到在另一家公司又寄了。 到这家公司开始上班,加班是每天必不可少的,看在钱给的比较多的份上,就不太计较了。没想到8月一纸通知,所有人不准加班,加班费不仅没有了,薪资还要降40%…

Java三大特性之一——多态(详细版)

文章目录 一、什么是多态二、重写2.1、重写的规则 三、多态的实现条件四、向上转型五、向下转型六、动态绑定七、使用多态的优缺点7.1、优点7.2、缺点 八、避免在构造方法中调用重写的方法 一、什么是多态 Java多态是面向对象编程的一个重要特性,它允许不同的对象对…

连锁餐饮企业-凡塔斯,用千里聆RPA搭建用户评价管理系统,提升门店服务满意度

凡塔斯是大型连锁餐饮企业昊澜餐饮集团旗下餐饮品牌,是牛排自助餐头部品牌,旗下拥有凡塔斯、百分好、食物链KING自助烤肉及餐饮人才商学院等多个行业知名品牌。 创立至今,集团管理门店已发展到福建、广东、江西、浙江等十多个省市&#xff0c…

设备状态监控一定要直观,可视化大屏最适合这个工作

一、引言 在现代工业生产和各类设施运行中,设备的稳定运行至关重要。为了确保设备能够高效、可靠地工作,及时了解设备的状态是关键。而设备状态监控一定要直观,只有这样才能让操作人员和管理人员迅速掌握设备的运行情况,及时发现…

xxe靶机实战

靶机地址:https://www.vulnhub.com/entry/xxe-lab-1,254/ 下载好后解压 直接拖拽.ovf格式的文件到虚拟机里 打开kali扫描主机,靶机开着或者后台运行就行 arp-scan -I eth0 -l 扫描出来目标靶机ip地址192.168.142.145 nmap扫描端口 nmap -A -sS -T4 -P- --min-rat…

钉钉内集成第三方免密登录(Vue+.Net)

需要实现的效果就是在钉钉内点击应用能跳转到第三方网站并且免密登录 1.登录钉钉PC端管理后台 2.通过管理后台进去开发者后台 3.应用开发 创建H5微应用 4.应用创建成功后直接点权限管理全部授权 5.设置H5登录地址 6. 应用管理发布 至此需要配置的步骤全部已完成,…

画动态爱心(Python-matplotlib)

介绍 氵而已 由于用的是 AI,注释得非常清楚,自己改改也可以用 代码 # -*- coding: utf-8 -*- # Environment PyCharm # File_name 尝试1 |User Pfolg # 2024/11/05 22:45 import numpy as np import matplotlib.pyplot as plt import matplo…

理解 WordPress | 第五篇:页面构建器选择指南

WordPress 专题致力于从 0 到 1 搞懂、用熟这种可视化建站工具。 第一阶段主要是理解。 第二阶段开始实践个人博客、企业官网、独立站的建设。 如果感兴趣,点个关注吧,防止迷路。 什么是 WordPress 构建器 WordPress 构建器(Page Builder&am…

硬件基础07 功率放大器

一、功放理论 在多级放大电路中,输出信号往往要送去驱动—定的装置。例如,这类装置包括收音机中扬声器的音圈、电动机的控制绕组等。多级放大电路除了应有电压放大级外,还要求有一个能输出一定信号功率的输出级。这类主要用于向负载提供功率的…

敬业签适配鸿蒙:开启多端协同新篇章

纯血鸿蒙,即华为推出的原生鸿蒙操作系统(HarmonyOS Next),是一款面向全场景的分布式操作系统,它以其独特的微内核设计和多设备协同能力,引领着智能终端的新潮流。鸿蒙系统的推出,不仅标志着中国…

Matlab车牌识别课程设计报告模板(附源代码)

目 录 一.课程设计目的……………………………………………3 二.设计原理…………………………………………………3 三.详细设计步骤……………………………………………3 四. 设计结果及分析…………………………………………18 五. …

Apache HTTPD 换行解析漏洞(CVE-2017-15715)

Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。 上传一个1.php,被拦截 在1.p…

用qrcode和pyzbar分别生成和解码二维码

我用的是anaconda环境,在anaconda命令行下,用pip分别安装以下库文件: pip install opencv-python pip install numpy pip install pillow pip install myqr pip install qrcode pip install zxing 生成二维码 打开pycharm&#xff0c…

软件测试学习笔记丨Vue学习笔记-基本介绍

本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/23458 编译器使用:VScode 推荐插件 JavaScript (ES6) code snippets:包含 ES6 语法中的 JS 代码段Vetur:VSCode 支持 VUE 的工具Auto Close Tag&#xff…