CentOS 7.5系统安装使用Mysql 5.7数据库

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: CentOS 7.5系统安装使用Mysql 5.7数据库

一、部署Mysql数据库


1.下载Mysql 5.7 Yum源


Mysql下载

[root@localhost ~]# wget https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
[root@localhost ~]# ls mysql57-community-release-el7-11.noarch.rpm 
mysql57-community-release-el7-11.noarch.rpm

2.安装Mysql 5.7 Yum源

[root@localhost ~]# rpm -ivh mysql57-community-release-el7-11.noarch.rpm
[root@localhost ~]# yum -y install mysql-server    //安装Mysql

3.启动Mysqld服务

[root@localhost ~]# systemctl start mysqld
[root@localhost ~]# systemctl enable mysqld
[root@localhost ~]# ss -antulp | grep :3306
tcp    LISTEN     0      80     [::]:3306               [::]:*                   users:(("mysqld",pid=54086,fd=21))

4.查看初始密码

[root@localhost ~]# grep 'root@localhost:' /var/log/mysqld.log
2020-03-20T00:57:34.072739Z 1 [Note] A temporary password is generated for root@localhost: hsQ(7(so_cgX

5.使用初始密码登陆

[root@localhost ~]# mysql -hlocalhost -uroot -p'hsQ(7(so_cgX'
mysql: [Warning] Using a password on the command line interface can be insecure.
...
Server version: 5.7.29
...
mysql>

6.修改登陆密码

mysql> alter user root@"localhost" identified by "123qqq...A";

7.使用新密码登陆

[root@localhost ~]# mysql -uroot -p123qqq...A

8.修改密码策略

[root@localhost ~]# mysql -uroot -p123qqq...A
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_auto_generate_rsa_keys | ON              |
| sha256_password_private_key_path       | private_key.pem |
| sha256_password_proxy_users            | OFF             |
| sha256_password_public_key_path        | public_key.pem  |
| 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               |
+----------------------------------------+-----------------+
mysql> set global validate_password_length=6;   //修改密码长度
mysql> set global validate_password_policy=0;    //修改密码策略
mysql> alter user root@"localhost" identified by "123qqq...A";

9.永久修改密码策略

[root@localhost ~]# vim /etc/my.cnf       
[mysqld]
validate_password_length=6
validate_password_policy=0

二、数据库基本管理


1.客户端连接mysql服务的方法


  • 命令行


  • Web页面


  • 安装图形软件


  • 编写脚本(php、java、python…)


2.使用mysql命令


  • Mysql  -h服务器IP  -u用户名  -p密码  数据库名        //直接连接至某个数据库


  • Quit或exit          //退出数据库


3.数据存储流程

- 连接数据库服务器
 - 建库              //类似于文件夹
 - 建表             //类似于文件
 - 插入记录         //类似于文件内容
- 断开连接

4.Mysql管理环境


  • SQL命令使用规则


  • sql命令不区分字母大小写(密码、变量值除外)


  • 每条sql命令以 ; 结束


  • 默认命令不支持Tab键自动补齐


  • \c终止sql命令


5.常用的Sql命令分类


  • 管理数据库使用SQL(结构化查询语言)


  • DDL     数据库定义语言       如:create、alter、drop


  • DML     数据库操作语言       如:insert、update、delete


  • DCL     数据库控制语言       如:grant、revoke


  • DTL     数据库实物语言       如:commit、rollback、savepoint


6.Mysql相关目录及配置文件:


  • 主配置文件   /etc/my.cnf


  • 数据库目录   /var/lib/mysql


  • 默认端口号   3306


  • 服务名       mysqld


  • 传输协议     TCP


  • 进程所有者   mysql


  • 进程所属组   mysql


  • 错误日志文件 /var/log/mysqld.log


三、Mysql基本操作


---库管理命令


  • 库  类似于文件夹,用来存储表
-show  databases;            //显示已有的库
   -select  user();             //显示连接用户
   -use 库名;                   //切换库
   -select database();         //显示当前所在的库
   -create database 库名;      //创建新库
   -show tables;              //显示已有的表
   -drop database 库名;       //删除库

---库名  命名规则


  • 仅可以使用数字、字母、下划线、不能纯数字


  • 区分字母大小写,具有唯一性


  • 不可使用指令关键字、特殊字符
例:
 musql> create database DB1;
 Query OK,1 row affected (0.06sec)
 musql> create database db1;
 Query OK,1 row affected (0.03sec)

---表管理命令


1.表存储数据的文件

Mysql >create table 库名.表名(字段名1 类型(宽度),字段名2 类型(宽度), ......)DEFAULT CHARSET=utf8;      //指定中文字符集,可以给字符段赋值中文
[root@localhost ~]# LANG="zh_CN.UTF-8"    //设置表记录可以写中文
例:
 mysql> create table db1.学生表(姓名 char(10), 家庭地址 char(20))    DEFAULT CHARSET=utf8;
 Mysql> create table db1.test(name char(15),home char(20));   //创建在db1数据库中创建表 test,字段1为name,类型是char,宽度是15

2.表类似于文件


  • desc  库名.表名;                  //查看表结构


  • drop table 库名.表名;          //删除表
例:
mysql> desc db1.test;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| name  | char(8)     | YES  |     | NULL    |       |
| home  | varchar(25) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+

3.记录类似于文件里的行

-select * from 库名.表名;                 //查看表记录
 -insert into 库名.表名 values(值列表);    //插入表记录
 -update 库名.表名 set 字段=值;           //修改表记录
 -delete from 表名;                    //删除表记录
[root@localhost ~]# mysql -uroot -p123qqq...A
mysql> create table db1.stuinfo(name var(8),country var(10));
mysql> insert into db1.stuinfo values(“jim”,”usa”),(“lilei”,”china”);
mysql> select  * from  db1.stuinfo;
+-------+---------+
| name  | country |
+-------+---------+
| jim   | usa     |
| lelei | china   |
+-------+---------+
mysql >update db1.stuinfo set homeaddr=”beijing”;
mysql> select * from db1.stuinfo;
+-------+---------+
| name  | country |
+-------+---------+
| jim   | beijing |
| lelei | beijing |
+-------+---------+


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
4月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
175 3
|
4月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。
|
4月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
863 152
|
4月前
|
关系型数据库 MySQL 分布式数据库
阿里云PolarDB云原生数据库收费价格:MySQL和PostgreSQL详细介绍
阿里云PolarDB兼容MySQL、PostgreSQL及Oracle语法,支持集中式与分布式架构。标准版2核4G年费1116元起,企业版最高性能达4核16G,支持HTAP与多级高可用,广泛应用于金融、政务、互联网等领域,TCO成本降低50%。
|
4月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
4月前
|
SQL 关系型数据库 MySQL
Mysql数据恢复—Mysql数据库delete删除后数据恢复案例
本地服务器,操作系统为windows server。服务器上部署mysql单实例,innodb引擎,独立表空间。未进行数据库备份,未开启binlog。 人为误操作使用Delete命令删除数据时未添加where子句,导致全表数据被删除。删除后未对该表进行任何操作。需要恢复误删除的数据。 在本案例中的mysql数据库未进行备份,也未开启binlog日志,无法直接还原数据库。
|
4月前
|
Ubuntu 安全 关系型数据库
安装与配置MySQL 8 on Ubuntu,包括权限授予、数据库备份及远程连接指南
以上步骤提供了在Ubuntu上从头开始设置、配置、授权、备份及恢复一个基础但完整的MySQL环境所需知识点。
482 7
|
4月前
|
缓存 监控 关系型数据库
使用MYSQL Report分析数据库性能(上)
最终建议:当前系统是完美的读密集型负载模型,优化重点应放在减少行读取量和提高数据定位效率。通过索引优化、分区策略和内存缓存,预期可降低30%的CPU负载,同时保持100%的缓冲池命中率。建议每百万次查询后刷新统计信息以持续优化
260 6
|
4月前
|
缓存 监控 关系型数据库
使用MYSQL Report分析数据库性能(中)
使用MYSQL Report分析数据库性能
177 1
|
4月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。