MySQL安装配置
MySQL是什么?数据库是什么?
数据库是什么?
什么是数据库?
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。
每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。
我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。
所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。
MySQL是什么?
MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS应用软件之一。
而"RDBMS" 即关系数据库管理系统(Relational Database Management System)有以下特点:
1.数据以表格的形式出现
2.每行为各种记录名称
3.每列为记录名称所对应的数据域
4.许多的行和列组成一张表单
5.若干的表单组成database
MySQL安装
官网下载地址:MySQL官网下载地址
1.下载完后,将压缩包包解压到相应的目录,这里我将解压后的文件夹放在 D:\mysql-5.7.29 目录中,自己可以自行选择
2.配置下 MySQL 的配置文件
打开刚刚解压的文件夹 D:\mysql-5.7.29 ,在该文件夹下右键创建 my.ini 配置文件,复制粘贴并编辑配置 my.ini 文件以下基本信息:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\mysql-5.7.29\mysql-5.7.29-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\mysql-5.7.29\mysql-5.7.29-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
3.启动下 MySQL 数据库:
以管理员身份打开 cmd 命令行工具,切换目录:
cd mysql-5.7.29\bin
4.初始化数据库:
mysqld --initialize --console
执行完成后,会输出 root 用户的初始默认密码,如下:
2020-06-24T02:35:05.464644Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: AQWCY5ws&hjQ
其中AQWCY5ws&hjQ 就是初始密码,后面登录需要用到,密码可以在登录后自行修改
5.安装 输入以下命令:
mysqld install
6.初始化 data 目录:
cd mysql-5.7.29\bin
mysqld --initialize-insecure
7.启动MySQL
net start mysql
8.登录本机的 MySQL 数据库 输入以下命令:
mysql -u root -p
回车后会出现:
Enter password:
出现后自己没有设置密码的话直接敲回车即可进入成功,有设置则输入密码,登录成功后出现如下:
MySQL 管理
1.Windows 系统下,打开命令窗口(cmd)
启动:
cd D:/mysql/bin
mysqld --console
关闭:
cd D:/mysql/bin
mysqladmin -uroot shutdown
管理MySQL的命令:
- 选择要操作的Mysql数据库,使用该命令后所有Mysql命令都只针对该数据库
// USE 数据库名 :
mysql> use TestDB;
Database changed
- 列出 MySQL 数据库管理系统的数据库列表
// SHOW DATABASES:
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| TestDB |
| mydb |
| mysql |
| performance_schema |
| phpmyadmin |
| shop |
+--------------------+
7 rows in set (0.03 sec)
- 显示指定数据库的所有表,使用该命令前需要使用 use 命令来选择要操作的数据库
// SHOW TABLES:
mysql> use TestDB;
Database changed
mysql> SHOW TABLES;
+------------------+
| Tables_in_testdb |
+------------------+
| teacher_tbl |
| testdb_tbl |
| testdb_tbl |
+------------------+
3 rows in set (0.00 sec)
- 显示数据表的属性,属性类型,主键信息 ,是否为 NULL,默认值等其他信息
// SHOW COLUMNS FROM 数据表:
mysql> SHOW COLUMNS FROM testdb_tbl;
+-----------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+-------+
| testdb_id | int(11) | NO | PRI | NULL | |
| testdb_title | varchar(255) | YES | | NULL | |
| testdb_author | varchar(255) | YES | | NULL | |
| submission_date | date | YES | | NULL | |
+-----------------+--------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
- 输出Mysql数据库管理系统的性能及统计信息
// SHOW TABLE STATUS LIKE [FROM mysql> SHOW TABLE STATUS FROM RUNOOB; # 显示数据库 RUNOOB 中所有表的信息
mysql> SHOW TABLE STATUS from TestDB LIKE 'testdb%'; # 表名以testdb开头的表的信息
mysql> SHOW TABLE STATUS from TestDB LIKE 'testdb%'\G; # 加上 \G,查询结果按列打印