mysql 入门01
- 什么是数据库?
- 数据库的分类
- mysql数据库的搭建
- mysql介绍
- 安装软件
- 初始化
- 查看初始密码
- 利用初始密码登录&&修改初始密码
- 修改密码策略
- 相关参数
- mysql的基础操作
一,数据库专业术语
- DB(DataBase)
- 数据库:依照某种数据模型进行组织并存放到存储器的数据集合
- DBMS(DataBase Management System)
- 数据库管理系统:用来操作和管理数据库的服务软件
- DBS(Database System)
- 数据库系统:拥有数据库和数据库管理系统的计算机系统
二,数据库的分类
ps:mariadb对初学者来说与mysql几乎没有区别
三,mysql的安装和初始化
-
数据包在官网下载下载:新版centos/redhat不在自带mysql数据包
-
数据包的功能(部分)完整的数据包 mysql-5.7.17.tar
-
安装mysql
[root@mysql01 ~]# tar -xvf mysql-5.7.17.tar mysql-community-embedded-compat-5.7.17-1.el7.x86_64.rpm mysql-community-embedded-devel-5.7.17-1.el7.x86_64.rpm mysql-community-libs-5.7.17-1.el7.x86_64.rpm mysql-community-client-5.7.17-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.17-1.el7.x86_64.rpm mysql-community-common-5.7.17-1.el7.x86_64.rpm mysql-community-minimal-debuginfo-5.7.17-1.el7.x86_64.rpm mysql-community-devel-5.7.17-1.el7.x86_64.rpm mysql-community-server-5.7.17-1.el7.x86_64.rpm mysql-community-embedded-5.7.17-1.el7.x86_64.rpm mysql-community-test-5.7.17-1.el7.x86_64.rpm [root@mysql01 ~]# yum install -y mysql-community-*.rpm #安装该目录下所有包 [root@mysql01 ~]# systemctl start mysqld #启动服务 [root@mysql01 ~]# systemctl enable mysqld #开机自启 [root@mysql01 ~]# ss -ant | grep 3306 LISTEN 0 80 :::3306 :::* #服务已开启
-
-
查看初始密码,登录修改初始密码
[root@mysql01 ~]# grep -i 'password' /var/log/mysqld.log 2020-02-12T02:19:48.981591Z 1 [Note] A temporary password is generated for root@localhost: ;J6_Mlhl7)e+ #';J6_Mlhl7)e+' 是初始密码 [root@mysql01 ~]# mysql -uroot -p';J6_Mlhl7)e+' mysql> #进入数据库 mysql> alter user root@"localhost" identified by "DZ@znb123"; #符合密码复杂性原则 Query OK, 0 rows affected (0.00 sec) mysql>
-
修改密码策略
密码策略有三种
/*查看策略内容*/
mysql> show variables like "%password%" ;
+---------------------------------------+--------+
| Variable_name | Value |
+---------------------------------------+--------+
| default_password_lifetime | 0 |
| disconnect_on_expired_password | ON |
| log_builtin_as_identified_by_password | OFF |
| mysql_native_password_proxy_users | OFF |
| old_passwords | 0 |
| report_password | |
| sha256_password_proxy_users | OFF |
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |/*插件用于验证密码强度的字典文件路径*/
| validate_password_length | 8 |/*密码长度限制*/
| validate_password_mixed_case_count | 1 |/*密码至少包含的小写和大写字母数*/
| validate_password_number_count | 1 |/*密码至少要包含的数字个数*/
| validate_password_policy | MEDIUM |/*密码策略的级别*/
| validate_password_special_char_count | 1 |/*密码至少要包含的特殊字符数*/
+---------------------------------------+--------+
14 rows in set (0.00 sec)
/*修改策略内容*/
mysql> set global validate_password_length=6; /*修改密码长度*/
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_policy=0; /*修改策略级别*/
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like '%password%';
+---------------------------------------+-------+
| Variable_name | Value |
+---------------------------------------+-------+
| default_password_lifetime | 0 |
| disconnect_on_expired_password | ON |
| log_builtin_as_identified_by_password | OFF |
| mysql_native_password_proxy_users | OFF |
| old_passwords | 0 |
| report_password | |
| sha256_password_proxy_users | OFF |
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 6 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+---------------------------------------+-------+
14 rows in set (0.00 sec)
/*密码就可以设置为任意一个大于6位的密码*/
ps:以上都是临时配置重启后会失效
#永久配置(小心参数名写错)
vim /etc/my.cnf
[mysqld]
validate_password_policy=0
validate_password_length=6
四,数据库的操作(核心sql语句)
-
sql功能 核心命令 数据查询 select(查找) 数据定义 create(创建) , drop(删除库/表) ,alter(改变) 数据操纵 insert(插入) , update(更新数据) , delete(删除数据) 数据控制 grant(赋予权限) , revoke(回收权限) -
数据库连接
命令格式 mysql -h服务器地址 -u用户名 -p密码 [数据库名] //本机可以省略-h [root@mysql02 ~]# mysql -hlocalhost -uroot -p Enter password:
-
修改密码
mysql> alter user 用户@"数据库地址" identified by "密码"; /*修改密码的格式*/
-
查找库,切换库,创建库,删库
/*显示所有的库*/ mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.01 sec) /*切换至库目录下*/ mysql> use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed /*创建库*/ mysql> create database test01; Query OK, 1 row affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | test01 | +--------------------+ 5 rows in set (0.00 sec) /*删库*/ mysql> drop database test01; Query OK, 0 rows affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec)
-
查找表名,查询表记录,创建表,查看表结构,插入表记录,修改表记录,删除表
/*查找表名(只能在库中操作)*/ mysql> use sys; mysql> show tables; +-----------------------------------------------+ | Tables_in_sys | +-----------------------------------------------+ | host_summary | | host_summary_by_file_io | | host_summary_by_file_io_type | | host_summary_by_stages | | host_summary_by_statement_latency | | host_summary_by_statement_type | | ... ... ... ... ... .... | | x$waits_by_host_by_latency | | x$waits_by_user_by_latency | | x$waits_global_by_latency | +-----------------------------------------------+ 101 rows in set (0.01 sec) /*插寻表记录(只说最简单的)*/ mysql> select * from sys.host_summary; 查询 所有 从 库名.表名; /*创建表*/ mysql> create database test01; Query OK, 1 row affected (0.00 sec) mysql> use test01; Database changed mysql> create table > player(name varchar(5),sex char(1),QQ varchar(12)) DEFAULT charset=utf8; Query OK, 0 rows affected (0.01 sec) mysql> show tables; +------------------+ | Tables_in_test01 | +------------------+ | player | +------------------+ 1 row in set (0.00 sec) /*查看表结构*/ mysql> desc player; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | name | varchar(5) | YES | | NULL | | | sex | char(1) | YES | | NULL | | | QQ | varchar(12) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 3 rows in set (0.00 sec) /*插入表记录*/ mysql> insert into player values ("鲁班七号","男","174451542"); Query OK, 1 row affected (0.00 sec) mysql> select * from player; +--------------+------+-----------+ | name | sex | QQ | +--------------+------+-----------+ | 鲁班七号 | 男 | 174451542 | +--------------+------+-----------+ 1 row in set (0.00 sec) /*修改表记录*/ mysql> update player set sex="女" where name="鲁班七号"; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from player; +--------------+------+-----------+ | name | sex | QQ | +--------------+------+-----------+ | 鲁班七号 | 女 | 174451542 | +--------------+------+-----------+ 1 row in set (0.00 sec) /*删除表*/ mysql> drop table player ; Query OK, 0 rows affected (0.01 sec) mysql> show tables; Empty set (0.00 sec)
来源:CSDN
作者:花里湖,湖里韶
链接:https://blog.csdn.net/weixin_43913605/article/details/104301977