安装
-
lamp.sh
-
查看服务是否启动
systemctl | grep mysqld
-
启动/停止/重启服务
systemctl start/stop/restart mysqld
配置文件
-
/etc/my.cnf
-
端口号: 默认3306. 端口号用来区分不同的服务. 前1000个端口号默认分配好. 从3306传入的是mysql服务.
-
有时需要关闭防火墙
set enforce 0 systemctl stop firewalld
Mysql客户机
- sqlyog
- navicat
客户机的配置
- 主机: 虚拟机的ip地址. 使用本机则为
localhost
或127.0.0.1
.localhost
是环回地址, 发送端, 接收端都是同一个机器. - 两步走连接: 先连接远程服务器的ssh, 端口默认22, 然后远程服务器通过
loaclhost
连接修改数据库, 这样数据库只能被主机连接, 数据使用ssh传输, 更加安全. - 端口: 默认3306
连接服务器
mysql -h localhost -u root -p
Enter password:
- 字符集: 创建数据库时选择, 一般选择
utf8-general ci
, ci表示case insensitive
.show character set
: 查看所有字符集show variables like character%
: 查看当前的字符集.
基本操作
create database choose; // 创建choose数据库
show databases; //查看所有数据库
use database1; // 切换到数据库
drop database database1; // 删除数据库
## 存储引擎
show engines; // 查看支持的引擎
set default_storage_engine=InnoDB;
create table mytable;
desc mytable; // 描述表的结构
- innoDB(mysql默认)
- 支持外键, 某个键参照另一张表中的主键
- 支持事务, 如果过程没有全部完成, 就全部回滚
- 支持全文检索
- myISAM
- 可以被压缩
- 可以检查和修复表
- 不支持事务和外键
插入数据
use mydb
insert into mytable (id) Values (1)
变量
系统变量以@@开头, 用户变量用@开头
备份和恢复
- 停止服务
-
方法一: 停止服务
-
方法二:
flush tables with read lock;
备份, 把数据刷新到数据库文件, 锁定所有的表
-
-
选择备份文件
- 如果用的myISAM或InnoDB而没有拆分文件, 备份就要备份整个数据库
- 备份配置文件