简道云 mysql_5.1 MySQL介绍

2023-10-27 14:10
文章标签 mysql 介绍 database 5.1 简道

本文主要是介绍简道云 mysql_5.1 MySQL介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

46774c205d25bfd478a868c2e4945c15.png

本节主题: 5.1 MySQL介绍

课程讲师: Charlie

观看地址: 点我进入

1 本节要点

了解MySQL的基本操作

2 课前准备

2.1 MySQL

2.1.1 安装MySQL

(建议将MySQL安装在服务器,便于我们进行后端开发时的数据库访问,所以大家可以花4元续费1周的服务器)

也可以安装在本地主机(如果MySQL安装在本地,那么封装接口后,除了要做穿透,还要保持本地机时刻开机,我们演示的话是以安装在服务器为例):

Windows安装MySQL教程:点我查看

Mac安装MySQL教程:点我查看

从XShell登录服务器:

1897d277ddea0dbeb5f87f17f5413768.png

升级 apt-get

sudo apt-get update

安装MySQL

sudo apt-get install mysql-server

如下图,出现是否继续后,输入Y,按回车即可继续安装

f32584a76859bda155468c8968ea2e24.png

2.1.2 初始化MySQL

初始化MySQL配置

sudo mysql_secure_installation

会弹出下列所示的初始化的配置项,可依次输入你的选项。注意输入密码时,不会显示在shell中,直接输入后按回车即可!

#1

VALIDATE PASSWORD PLUGIN can be used to test passwords...

Press y|Y for Yes, any other key for No: N (我的选项)

#2

Please set the password for root here...

New password: (输入密码,注意,shell界面输入密码不会显示,并不是卡了)

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...

Remove anonymous users? (Press y|Y for Yes, any other key for No) : N (我的选项)

#4

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 (我的选项)

#5

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

anyone can access...

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : N (我的选项)

#6

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 (我的选项)

检查MySQL状态

systemctl status mysql.service

出现active表示正常

41da20e5a596e7277954d59bc319f241.png

2.1.3 配置远程连接

#进入MySQL

sudo mysql -uroot -p

#出现Enter password: 后,输入你的密码并按回车(注意,shell界面输入密码不会显示,并不是卡了)

1e7801839909202f83e65ee65873e458.png

进入MySQL后,创建一个库 jdy_api (这个名字可以自定),用来进行测试

CREATE DATABASE jdy_api;

创建一个拥有所有库访问权限的访客账号(账号为user1,密码为123456,当然也可以自行更改)

MySQL 8.0之前的版本:

GRANT ALL PRIVILEGES ON *.* TO 'user1'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

# 或者可以这样,设置该账户只能访问jdy_api库

GRANT ALL PRIVILEGES ON jdy_api.* TO 'user1'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

#刷新权限

flush privileges;

#退出mysql

exit

MySQL 8.0及之后的版本:

CREATE USER 'user1'@'%' identified by '123456';

GRANT ALL PRIVILEGES ON *.* TO 'user1'@'%' WITH GRANT OPTION;

#设置该账户只能访问jdy_api库

CREATE USER 'user1'@'%' identified by '123456';

GRANT ALL PRIVILEGES ON jdy_api.* TO 'user1'@'%' WITH GRANT OPTION;

#刷新权限

flush privileges;

#退出mysql

exit

注:这样我们的Mysql已经就已经有了2个账号:第一个是管理员账号,用户名root,密码为安装时候设置的密码;第二个账号是访客账号,用户名user1,密码123456,后面在用Navicat和Python进行开发的时候,建议使用访客账号~

2.1.4 修改配置文件

这里要退出MySQL,到操作系统才可以进行下一步操作,如图,mysql> 表示在MySQL环境,root@xxxxx 表示在ubuntu操作系统;

c2fdff1f031605b7f2711e3be70fc4a8.png

修改MySQL配置文件

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

找到 bind-address= 127.0.0.1

bc3a2e1414d22717ba20bb590fa3b435.png

按键盘 i 进入编辑模式,在bind前加上#

bind-address = 127.0.0.1 修改为(注释掉)

#bind-address = 127.0.0.1

9228d6c88b6a192be8abebb0e78c6346.png

按esc健,然后同时按shift 和 ;键(L健右边),在出现冒号后输入wq,按回车退出

22400b05a58e73f185b4493209e898b7.png

重启MySQL服务即可

service mysql restart

73fa1447a1f81f92a9f8ffbf94cc4311.png

2.1.5 开放阿里云安全组

按照文档 Linux基础 内的操作,开放3306端口(MySQL远程连接端口),同样为TCP协议。

2.2 Navicat

Navicat是一款方便的数据库管理工具,可远程连接数据库,通过可视化的界面对数据库进行管理。

19c5584aa2734366a3e706d78493181f.png

下载地址:点我查看

进入Navicat后,点击新建连接,选择MySQL

b229a21140bc469299cc0b271932e8c3.png

填写连接名称、主机(ip地址)、端口为3306、访客用户名、访问密码(注意,不是root账号和root的密码!!!我们在2.1里面设置了2次密码,第一次是给root管理员设置密码,这个密码用来在服务器内登录服务器进行管理;第二次是给访问账号设置用户名和密码,这里填的是访客账号!!!)

c259c2ff863a36c9083edb0dcc5bbca3.png

填写后,双击即可连接上你服务器的数据库!

4d3555be92e8cecb2b6d8744f83fca05.png

3 课程内容

3.1 MySQL

3.1.1 MySQL支持中文

需要在MySQL插入中文字符的话,需要将数据库、表单、字段的字符全部设置成utf-8的编码格式,才可以录入中文;

数据库:

95d34ad791d23ed290ee11dd896ecdb5.png

表单:

e5e86d4aadc454f6098b349a0b97e63d.png

字段:

b30a06aa56b3f49ca151cbe6a0066e93.png

3.1.2 数据类型

**文本类型 **

82d7f8948e07586956679b07593bce61.png

数字类型

3e7fb02ffed84d89f23b5ba0194d2638.png

日期类型

63e5514c2f92723fcedebe88e0b6c972.png

3.1.3 MySQL常见操作

//添加和删除数据库

查看当前有哪些DB: show databases;

添加DB:create database xx;

删除DB:drop database xx;

//创建数据表

create table tabel_name(

colum_name1 data_type1,

colum_name2 data_type2

);

//删除数据表

drop table table_name;

//修改某个数据列的名字或数据类型

alter table table_name change old_col_name new_col_name data_type

//查看表数据(重点!)

select*from table_name;

select col_name1,col_came2 from table_name;

//插入数据(重点!)

insert into table1 values (value1,value2)

insert table1 (col1,col2,) values (value1,value2)

//去重复

select distinct col_name1,col_name2 from table_name;

//使用order by对查询结果拍讯

按单一列名拍讯

select*from table_name [where子句] order by col_name [asc/desc]

按多列排序

select*from table_name [where子句] order by col1 [asc/desc],col2 [asc/desc]

//select结果按limit截取

select*from table_name [where] [order by] limit [offset,] rowCount

limit rowCount = limit 0,rowCount

//insert into与select组合使用

insert into table1 select col1,col2 from table2

insert into table1 (col1,col2) select col3,col4 from talbe

//更新数据表

修改单列:

update table_name set col_name = XXX [where]

修改多列:

update table_name set col1=xxx,col2=xxx [where]

//where语句中in操作符使用

select*from table1 where col1 in (value1,value2)

select*from table1 where col1 in (select col2 from talbe2)

//where语句中between操作符使用

select*from table_name where col_name between value1 and value2

select*from table_name where col_nmae not between value1 and value2

//where语句中like操作符使用 模糊匹配

select*from table_name where col_name [not]like pattern

pattern:匹配模式 'abc' '%abc' 'abc%' '%abc%'

这篇关于简道云 mysql_5.1 MySQL介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/weixin_33952775/article/details/113285737
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/286166

相关文章

mysql删除无用用户的方法实现

《mysql删除无用用户的方法实现》本文主要介绍了mysql删除无用用户的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 1、删除不用的账户(1) 查看当前已存在账户mysql> select user,host,pa

使用Dify访问mysql数据库详细代码示例

《使用Dify访问mysql数据库详细代码示例》:本文主要介绍使用Dify访问mysql数据库的相关资料,并详细讲解了如何在本地搭建数据库访问服务,使用ngrok暴露到公网,并创建知识库、数据库访... 1、在本地搭建数据库访问的服务,并使用ngrok暴露到公网。#sql_tools.pyfrom

MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固 通俗易懂版)

《MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固通俗易懂版)》本文主要讲解了MySQL中的多表查询,包括子查询、笛卡尔积、自连接、多表查询的实现方法以及多列子查询等,通过实际例子和操... 目录复合查询1. 回顾查询基本操作group by 分组having1. 显示部门号为10的部门名,员

MyBatis-Plus中静态工具Db的多种用法及实例分析

《MyBatis-Plus中静态工具Db的多种用法及实例分析》本文将详细讲解MyBatis-Plus中静态工具Db的各种用法,并结合具体案例进行演示和说明,具有很好的参考价值,希望对大家有所帮助,如有... 目录MyBATis-Plus中静态工具Db的多种用法及实例案例背景使用静态工具Db进行数据库操作插入

MySQL中COALESCE函数示例详解

《MySQL中COALESCE函数示例详解》COALESCE是一个功能强大且常用的SQL函数,主要用来处理NULL值和实现灵活的值选择策略,能够使查询逻辑更清晰、简洁,:本文主要介绍MySQL中C... 目录语法示例1. 替换 NULL 值2. 用于字段默认值3. 多列优先级4. 结合聚合函数注意事项总结C

通过ibd文件恢复MySql数据的操作方法

《通过ibd文件恢复MySql数据的操作方法》文章介绍通过.ibd文件恢复MySQL数据的过程,包括知道表结构和不知道表结构两种情况,对于知道表结构的情况,可以直接将.ibd文件复制到新的数据库目录并... 目录第一种情况:知道表结构第二种情况:不知道表结构总结今天干了一件大事,安装1Panel导致原来服务

mysql关联查询速度慢的问题及解决

《mysql关联查询速度慢的问题及解决》:本文主要介绍mysql关联查询速度慢的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql关联查询速度慢1. 记录原因1.1 在一次线上的服务中1.2 最终发现2. 解决方案3. 具体操作总结mysql

Linux搭建Mysql主从同步的教程

《Linux搭建Mysql主从同步的教程》:本文主要介绍Linux搭建Mysql主从同步的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux搭建mysql主从同步1.启动mysql服务2.修改Mysql主库配置文件/etc/my.cnf3.重启主库my

MySql中的数据库连接池详解

《MySql中的数据库连接池详解》:本文主要介绍MySql中的数据库连接池方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql数据库连接池1、概念2、为什么会出现数据库连接池3、原理4、数据库连接池的提供商5、DataSource数据源6、DBCP7、C

MySQL的隐式锁(Implicit Lock)原理实现

《MySQL的隐式锁(ImplicitLock)原理实现》MySQL的InnoDB存储引擎中隐式锁是一种自动管理的锁,用于保证事务在行级别操作时的数据一致性和安全性,本文主要介绍了MySQL的隐式锁... 目录1. 背景:什么是隐式锁?2. 隐式锁的工作原理3. 隐式锁的类型4. 隐式锁的实现与源代码分析4