目录
前言
概念
应用环境
安装步骤
修改密码
按装脚本
MySQL 操作案例 创建数据库、数据表
MySQL 5.7远程登录
前言
本内容主要讲述在 linux 系统下怎么样安装 Mysql 以下讲述过程经过多方面整理而成
概念
MySQL是一种关系型数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择 MySQL 作为网站数据库。
应用环境
与其他的大型数据库例如 Oracle、DB2、SQL Server等相比,MySQL [1] 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于 MySQL是开放源码软件,因此可以大大降低总体拥有成本。
Linux作为操作系统,Apache 或Nginx作为 Web 服务器,MySQL 作为数据库,PHP/Perl/Python作为服务器端脚本解释器。由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统,被业界称为“LAMP“或“LNMP”组合。
安装步骤
准备环境
1.关闭防火墙
2.网卡改为NAT模式(能连外网)
3.配置好yum
以CentOS 7 为例 安装 MySQL 5.7
1.下载 MySQL 5.7 RPM 文件。可以从 MySQL 的官方网站上获取下载链接
MySQL官网地址:MySQL
下载好之后进行安装
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
![](https://img-blog.csdnimg.cn/03316b352f204e6aaa710bb9bbfac9d8.png)
2. 安装 MySQL 5.7 RPM 文件
(sudo 可以不加)
sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm
![](https://img-blog.csdnimg.cn/93c3be2141ff49a3bafaa38ede9f11e1.png)
3. 安装 MySQL 5.7 服务器
这个过程可以会存在gpg检测而产生报错 可以使用: \h 查看帮助信息找到 :--nogpgcheck 表示
禁用 gpg 检查,允许 yum 在安装时不使用 GPG 检查软件包的签名
(sudo 可以不加)
sudo yum install -y mysql-community-server --nogpgcheck
![](https://img-blog.csdnimg.cn/e73aa9ade1374cc8b21fb9743f5150d9.png)
4. 启动 MySQL 服务
(sudo 可以不加)
sudo systemctl start mysqld.service
![](https://img-blog.csdnimg.cn/ea7733cf25dc4a5f9722f16584e1e7ca.png)
5. 检查 MySQL 服务状态
(sudo 可以不加)
sudo systemctl status mysqld.service
如果 MySQL 服务处于运行状态,表示安装成功
![](https://img-blog.csdnimg.cn/f3225c28ec59459bb878eb6bcd46efa6.png)
修改密码
1.获取默认root密码
(sudo 可以不加)
sudo grep 'temporary password' /var/log/mysqld.log
初始密码为:ywAsSS#Dn1c+
![](https://img-blog.csdnimg.cn/ac5480c9cc1546e0b1bb7f4ef5a277d1.png)
2. 以初始 root 密码登录 MySQL
mysql -u root -p后面加上密码ywAsSS#Dn1c+
mysql -u root -pywAsSS#Dn1c+
![](https://img-blog.csdnimg.cn/0002b0bb27614c05b4e85e0604adc9af.png)
3.修改 MySQL root 密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
![](https://img-blog.csdnimg.cn/d7721ebadbe64f5389985ca7c03db84d.png)
用新密码登录
![](https://img-blog.csdnimg.cn/3fbd91d6f1af4231a4f1ee98ebe40364.png)
按装脚本
创建一个文件 cjf.sh 名字自定 但是必须是以 .sh 结尾 随后使用 vim 打开
把刚才敲过的命领写到里面 标题写上:#!/bin/bash
#!/bin/bash
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm ;
rpm -ivh mysql57-community-release-el7-11.noarch.rpm ;
yum install -y mysql-community-server --nogpgcheck ;
systemctl start mysqld.service ;
systemctl status mysqld.service ;
grep 'temporary password' /var/log/mysqld.log ;
mysql -u root -p
随后保存退出
![](https://img-blog.csdnimg.cn/70afd1c6305045f58d99e75c55c8530a.png)
执行脚本
直接执行会提示权限不够 然后我们可以给它执行权限 或者直接给 755
然后进行执行
chmod 755 cjf.sh
./cjf.sh
![](https://img-blog.csdnimg.cn/cf5bc7e3ed4b4755b7efd0acbedc55df.png)
![](https://img-blog.csdnimg.cn/10e87eabbfbf4bb0a7c48cea9f90c6ee.png)
MySQL 操作案例 创建数据库、数据表
1.创建一个名为 `mydb` 的新数据库
CREATE DATABASE mydb;
![](https://img-blog.csdnimg.cn/17d586451ac84c6c9b88f1c044757596.png)
2.从本地文件中运行脚本以创建数据表
mysql -u username -p mydb < /path/to/script.sql
(可以忽略)
3.创建一个名为 `customer` 的新数据表
需要先USE mydb 进入数据库创建数据表
CREATE TABLE customer (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(30) NOT NULL,
email VARCHAR(50),
created_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
![](https://img-blog.csdnimg.cn/9d5c8c138ae04142865426cd3c1123b2.png)
4.在 `customer` 表中插入一些新数据
INSERT INTO customer (name, email) VALUES ('John Doe', 'john.doe@example.com'),('Jane Smith','jane.smith@example.com');
![](https://img-blog.csdnimg.cn/5110e3c77257421591d44caa67ec7897.png)
5.查询 `customer` 表中的所有数据
SELECT * FROM customer;
![](https://img-blog.csdnimg.cn/64f3eb4756844e20b0306e434ae822b8.png)
6.更新 `customer` 表中 ID 为 1 的数据
UPDATE customer SET name='John Smith', email='john.smith@example.com' WHERE id=1;
![](https://img-blog.csdnimg.cn/79d8c8e3da264c2ab179c1c6a55f986b.png)
7.删除 `customer` 表中 ID 为 2 的数据
DELETE FROM customer WHERE id=2;
![](https://img-blog.csdnimg.cn/6b841c0a31584673b10be7eb5322325e.png)
8. 从 `customer` 表中选择 `name` 和 `email` 字段,并将结果按 `name` 字段升序排序
SELECT name, email FROM customer ORDER BY name ASC;
(表示name范围内按照字母顺序排序)
![](https://img-blog.csdnimg.cn/bd7e690a8c1a420e900268503f2b6e80.png)
SELECT name, email FROM customer ORDER BY email ASC;
(表示email邮箱范围按照字母顺序排序)
![](https://img-blog.csdnimg.cn/99a2ad1cfdbd43c8b76b2a9119120ce1.png)
9.从 `customer` 表中选择 `name` 和 `email` 字段,并只显示名字中含有字母 `a` 的记录
SELECT name, email FROM customer WHERE name LIKE '%a%';
(表示查找name范围内有a的字段)
![](https://img-blog.csdnimg.cn/bf8334d386d84a46bcf47e6167a3e4b0.png)
10. 将 `customer` 表中所有字段的值按照 `name` 字段升序导出到 CSV 文件
SELECT * INTO OUTFILE '/path/to/file.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM customer ORDER BY name ASC;
这些是一些 MySQL 操作示例,其中的语法可能因不同版本而异。更多信息可以在 MySQL 文档中找到
MySQL 5.7远程登录
1.登录 MySQL 数据库
使用以下命令登录到你的 MySQL 数据库:
mysql -u root -p
在提示下输入你的 MySQL 账户密码,然后按回车键进行登录。
![](https://img-blog.csdnimg.cn/d090577d67f34f03b43d4feb9752ff9b.png)
2. 创建一个新的远程登录用户
使用以下命令创建一个新的用户:
CREATE USER '用户名'@'%' IDENTIFIED BY '密码';
这个新用户被授予使用任何 IP 地址从任何地方通过网络连接到 MySQL 服务器的权限。
![](https://img-blog.csdnimg.cn/208b7edc81734e1db003909cafab2ab0.png)
3. 授予权限
为了授予用户完全的权限,运行以下命令:
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%';
这将授予新用户访问所有数据库和所有表的权限。如果你不希望用户访问某个数据库或表,请将 `*.*` 替换为相应的数据库和表名称。
![](https://img-blog.csdnimg.cn/281fa96975c44a59a7ad990ec08afc95.png)
4. 更新权限
运行以下命令将更改应用到 MySQL 服务器:
FLUSH PRIVILEGES;
![](https://img-blog.csdnimg.cn/ae9b6b74298d407486b7881b4ce39482.png)
5. 退出 MySQL 数据库
完成上述步骤后,你可以退出 MySQL 数据库:
exit;
现在你就可以使用新用户使用远程主机访问 MySQL 数据库了。
6.进行完以上的步骤之后再次打开一台虚拟机进行连接实验
在另一台机器上安装好 Mysql
输入 mysql -h 加上服务器的ip(192.168.1.128) -u cjf -p后面加上密码(123..coM)
mysql -h 192.168.1.128 -u cjf -p123..coM
![](https://img-blog.csdnimg.cn/d6a9d68c59cc49ef8cc29e11e22b05d3.png)