热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:mysql数据库第一天

篇首语:本文由编程笔记#小编为大家整理,主要介绍了mysql数据库第一天相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了mysql 数据库第一天相关的知识,希望对你有一定的参考价值。



mysql 数据库

 

Mysql 数据库:实质是一个存放和管理文件的软件

 

那么对于MySQL来说有两个软件:

  ——服务器软件:

    socket服务端

    本地文件操作

 

  ——客户端软件:

    socket客户端

    发送指令

    解析指令(mysql语句)  

 

对于服务器软件中的socket服务器是一直开着的,客户端随时需要连接,还有创建文件、删除文件、等操作。

对于客户端软件中的socket客户端,我们得需要发送指令去命令socket服务端文件进行操作。

 

 

mysql 要掌握的技能(内容):

  ——安装 服务器(mysqld)和客户端(mysql)

  ——连接

  ——学习SOL语句规则;命令服务端做任何的操作

 

数据库定义:存放数据的仓库。 数据库是长期存放在计算机中、有组织、可共享的数据。

数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性、可以进行数据共享

 

数据库管理系统(DataBase Management System):

  


数据库管理软件分类



分两大类:
  关系型:如sqllite,db2,oracle,access,sql server,MySQL,注意:sql语句通用
  非关系型:mongodb,redis,memcache
可以简单的理解为:
关系型数据库需要有表结构
非关系型数据库是key-value存储的,没有表结构
   非关系型数据库是以键对应值的方式存储的。

 

 

数据库服务器、数据管理系统。数据库。。表与记录的关系:

  

记录:1 xxx 324245234 22(多个字段的信息组成一条记录,即文件中的一行内容)

表:student,scholl,class_list(即文件)

数据库:oldboy_stu(即文件夹)

数据库管理系统:如mysql(是一个软件)

数据库服务器:一台计算机(对内存要求比较高)

 

总结:

数据库服务器-:运行数据库管理软件

数据库管理软件:管理-数据库

数据库:即文件夹,用来组织文件/表

表:即文件,用来存放多行内容/多条记录

 

Mysql 安装于基本管理:

 

添加环境变量:

【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【将MySQL的bin目录路径追加到变值值中,用 ; 分割】

 

5.初始化(生成一个MySQL服务)

 













1



mysqld --initialize-insecure





 

 6.启动mysql服务


mysqld #启动MySQL服务

 

7.启动mysql客户端并连接mysql服务端(新开一个cmd窗口)


mysql -u root -p # 连接MySQL服务器

 

上一步解决了一些问题,但不够彻底,因为在执行【mysqd】启动MySQL服务器时,当前终端会被hang住,那么做一下设置即可解决此问题,即将MySQL服务制作成windows服务



注意:--install前,必须用mysql启动命令的绝对路径
# 制作MySQL的Windows服务,在终端执行此命令:
"c:\\mysql-5.6.40-winx64\\bin\\mysqld" --install
# 移除MySQL的Windows服务,在终端执行此命令:
"c:\\mysql-5.7.16-winx64\\bin\\mysqld" --remove
注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令:
# 启动MySQL服务
net start mysql
# 关闭MySQL服务
net stop mysql


 


windows下登录设置密码

 

打开终端,输入mysql

输入mysql提供的函数:select user(); # 查看当前登录的账号

当前登录的默认账号为ODBC@localhost

 

 

如果想切到root账号登录

执行命令:


mysql -uroot -p

再查看当前用户:


select user();

管理员为root(拥有最高权限,管理员账号),密码为空,以无密码的方式登录了管理员账号,是非常危险的一件事情,所以要为管理员账号设置密码

设置管理员root账号密码为123


C:\\Users\\mjj>mysqladmin -uroot -p password "123" #设置初始密码 由于原密码为空,因此-p可以不用

ps:⚠️不用管它。翻译为:在命令行界面使用密码不安全,暴露在终端当中。

 

然后再登录账号,不输入密码则会出现如下结果:

 再次执行如下操作:

 

再查看一下当前登录的账号:

 

如果想将原始密码123,设置新密码为456


C:\\Users\\mjj>mysqladmin -uroot -p"123" password "456" #修改mysql密码,因为已经有密码了,所以必须输入原密码才能设置新密码

 依次执行如下操作:


mysql -uroot -p456
select user();

 


密码忘记——破解密码

 

跳过授权方式,直接登录!!

0.以管理员身份打开cmd

 

2.停掉mysql服务端


C:\\WINDOWS\\system32>net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。

3.执行如下命令跳过授权表



#跳过授权表
C:\\WINDOWS\\system32>mysqld --skip-grant-tables
2018-06-09 17:12:38 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path.
2018-06-09 17:12:38 0 [Note] mysqld (mysqld 5.6.40) starting as process 6052 ...4.


 4.再次查看

5. 现在可以任意的更改密码,执行如下命令



 update mysql.user set authentication_string =password(\'\') where User=\'root\'; 

 

6.刷新权限,执行命令


flush privileges;

7.退出mysql。执行命令:exit,

 

8.让用户去加载权限,以管理员身份进入cmd,查看当前mysql进程













1



tasklist |findstr mysql  #查看当前mysql的进程





 

9.杀死当前的进程,执行如下命令


taskkill /F /PID 6052 # 杀死当前的进程pid

10.再次执行如下操作,还原

 


统一字符编码

进入mysql客户端,执行\\s

 

 

为了统一字符编码,请执行如下操作:

(1)my.ini文件是mysql的配置文件,


在C:\\mysql-5.6.40-winx64文件下创建my.ini文件

(2)将如下代码拷贝保存。

    



#mysql5.5以上:修改方式为
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8


 

(3)以管理员身份重启服务,执行如下命令 



C:\\Windows\\system32>net stop MySQL
MySQL 服务正在停止..
MySQL 服务已成功停止。
C:\\Windows\\system32>net start MySQL
MySQL 服务正在启动 .
MySQL 服务已经启动成功。


(4)在cmd中输入mysql进入mysql环境,执行\\s,显示如下信息,表示成功

  

注: \\c 表示上一行代码不执行;

 

 

内容补充:

 进程相关:

 

  ——查看进程:

    tasklist | findstr mysql

  ——关闭进程:

    taskkill /F /PID 进程号

 



推荐阅读
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了软件测试知识点之数据库压力测试方法小结相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 面试经验分享:华为面试四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试
    最近有朋友去华为面试,面试经历包括四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试。80%的人都在第一轮电话面试中失败,因为缺乏基础知识。面试问题涉及 ... [详细]
  • 0x00端口渗透端口扫描端口的指纹信息(版本信息)端口所对应运行的服务常见的默认端口号.尝试弱口令端口爆破hydra端口弱口令NTScanHs ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • python中安装并使用redis相关的知识
    本文介绍了在python中安装并使用redis的相关知识,包括redis的数据缓存系统和支持的数据类型,以及在pycharm中安装redis模块和常用的字符串操作。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • WhenIusepythontoapplythepymysqlmoduletoaddafieldtoatableinthemysqldatabase,itdo ... [详细]
  • 本文主要复习了数据库的一些知识点,包括环境变量设置、表之间的引用关系等。同时介绍了一些常用的数据库命令及其使用方法,如创建数据库、查看已存在的数据库、切换数据库、创建表等操作。通过本文的学习,可以加深对数据库的理解和应用能力。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了理解Redis-关于string的更多命令(SETEX,SETNX,INCR,DECR,MSET)相关的知识,希望对你有 ... [详细]
  • 都说Python处理速度慢,为何月活7亿的 Instagram依然在使用Python?
    点击“Python编程与实战”,选择“置顶公众号”第一时间获取Python技术干货!来自|简书作者|我爱学python链接|https:www.jian ... [详细]
author-avatar
跳海FBA_802
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有