赞
踩
需要云服务器等云产品来学习Linux的同学可以移步/-->腾讯云<--/-->阿里云<--/-->华为云<--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。
目录
5、可选设置:开机自启动MySQL(云服务器没事一般不会关机)
- #打印当前机器的Linux版本
- [root@VM-4-11-centos ~]# cat /etc/redhat-release
- CentOS Linux release 7.6.1810 (Core)
- #在官网下载和Linux版本对应的rpm包
- http://repo.mysql.com/
- #安装rpm包
- rpm -ivh mysql57-community-release-el7.rpm
- #查看Linux的yum源是否被安装好
- [root@VM-4-11-centos MySQL]# ls /etc/yum.repos.d/ -l
- total 24
- -rw-r--r-- 1 root root 1838 Apr 27 2017 mysql-community.repo
- -rw-r--r-- 1 root root 1885 Apr 27 2017 mysql-community-source.repo
- #使用yum安装mysql
- yum install -y mysql-community-server
- #查看MySQL是否安装成功
- [root@VM-4-11-centos MySQL]# ls /etc/my.cnf #查看MySQL配置文件是否存在
- /etc/my.cnf
- [root@VM-4-11-centos MySQL]# which mysqld #查看MySQL服务端是否存在
- /sbin/mysqld
- [root@VM-4-11-centos MySQL]# which mysql #查看MySQL客户端是否存在
- /bin/mysql
- #启动MySQL服务器
- systemctl start mysqld
- 安装遇到秘钥过期的问题:
- Failing package is: mysql-community-common-5.7.42-1.el7.x86_64
- GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
- 解决⽅案:
- rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
- #获取临时密码
- [root@VM-4-11-centos MySQL]# sudo grep 'temporary password' /var/log/mysqld.log
- 2023-06-07T02:58:34.085200Z 1 [Note] A temporary password is generated for root@localhost: kQs***7OrS_M
- #使用临时密码登录
- [root@VM-4-11-centos MySQL]# mysql -h 127.0.0.1 -P 3306 -u root -p
- Enter password:
- #退出MySQl
- \q
- -h:指定要连接的 MySQL 数据库所在的主机名或 IP 地址。在这里,127.0.0.1 表示要连接的主机为本地主机,即连接本机上的 MySQL 数据库。不指明-h,默认连上本地服务器搭建的MySQL。
- -P:指定要连接的 MySQL 数据库所在的端口号。在这里,3306 表示 MySQL 数据库的默认端口号。不指明-P,默认使用配置文件指明的端口号连接MySQL。
- -u:指定要连接 MySQL 数据库的用户名。在这里,root 表示使用 root 用户名连接 MySQL 数据库。
- -p:表示连接 MySQL 数据库时需要输入密码。在这里,-p 后面没有指定密码,所以会提示输入密码。
当你输入完整的命令后,按下回车键,会提示输入密码,输入正确的密码后,就可以连接到 MySQL 数据库了。
- #打开MySQl配置文件
- vim /etc/my.cnf
- #尾行加入此句
- skip-grant-tables
- #重启MySQl服务
- systemctl restart mysqld
- #直接登录
- mysql -uroot
- #vim打开配置文件
- vim /etc/my.cnf
- #新增如下字段
- port=3306
- character-set-server=utf8
- default-storage-engine=innodb
- #重启MySQl服务,生效配置
- systemctl restart mysqld
- #开启开机自启动
- systemctl enable mysqld
- systemctl daemon-reload
MySQL本质是基于C(mysql)S(mysqld)模式的一种网络服务。
mysqld:它是数据库的服务器端(这是一个守护进程)
mysql:它是数据库的客户端
数据库是在磁盘或内存中存储的结构化数据文件。
数据库服务:mysqld
- mysql> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | mysql |
- | performance_schema |
- | sys |
- +--------------------+
- 4 rows in set (0.02 sec)
数据库存放于/var/lib/mysql目录下。
- mysql> create database helloworld;
- Query OK, 1 row affected (0.00 sec)
创建数据库,本质上就是在创建Linux下创建一个目录。
- mysql> use helloworld;
- Database changed
- mysql> create table students(
- -> name varchar(32),
- -> age int,
- -> gender varchar(2)
- -> );
- Query OK, 0 rows affected (0.26 sec)
在数据库中建立表,本质上就是在Linux中创建对应的文件。
- mysql> insert into students (name, age, gender) values ('张三',22,'男');
- Query OK, 1 row affected (0.05 sec)
- mysql> select* from students;
- +--------+------+--------+
- | name | age | gender |
- +--------+------+--------+
- | 张三 | 22 | 男 |
- | 王五 | 23 | 女 |
- | 王五 | 23 | 女 |
- +--------+------+--------+
- 3 rows in set (0.01 sec)
DDL【data definition language】:数据定义语言,用来维护存储数据的结构
代表指令: create, drop, alter
DML【data manipulation language】:数据操纵语言,用来对数据进行操作
代表指令: insert,delete,update
DML中又单独分了一个DQL:数据查询语言,代表指令: select
DCL【Data Control Language】:数据控制语言,主要负责权限管理和事务
代表指令: grant,revoke,commit
存储引擎是:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。
MySQL的核心就是插件式存储引擎,支持多种存储引擎。
- #查看MySQL的存储引擎
- mysql> show engines;
- +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
- | Engine | Support | Comment | Transactions | XA | Savepoints |
- +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
- | InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
- | MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
- | MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
- | BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
- | MyISAM | YES | MyISAM storage engine | NO | NO | NO |
- | CSV | YES | CSV storage engine | NO | NO | NO |
- | ARCHIVE | YES | Archive storage engine | NO | NO | NO |
- | PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
- | FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
- +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
- 9 rows in set (0.00 sec)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。