MySQL下载
MySQL菜鸟教程
MySQL-workbench可视化操作MySQL
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,
每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据。
Mysql数据库,MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
术语:
- 数据库: 数据库是一些关联表的集合。.
- 数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。
- 列: 一列(数据元素) 包含了相同的数据, 例如邮政编码的数据。
- 行:一行(=元组,或记录)是一组相关的数据,例如一条用户订阅的数据。
- 冗余:存储两倍数据,冗余降低了性能,但提高了数据的安全性。
- 主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。
- 外键:外键用于关联两个表。
- 复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。
- 索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。
- 参照完整性: 参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性。
mac 安装 mysql
下载dmg文件安装
安装完成后注意事项
1 路径:硬盘——usr——local——mysql——bin
2 初始化密码是安装完成后弹窗提示(If you lose this password, please consult the section How to Reset the Root Password in the MySQL reference manual.a temporary password is generated for root@local:5wDClqL#)rXo)。
mac 删除 mysql
sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
edit /etc/hostconfig and remove the line MYSQLCOM=-YES-
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Recipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*
mac 使用 mysql
1、启动或关闭
(1)系统偏好设置启动或关闭:Launchpad——系统偏好设置——MySQL——Start/Stop MySQL Server
(2)终端命令启动或关闭:
// 启动:
sudo /usr/local/mysql/support-files/mysql.server start
// 关闭
sudo /usr/local/mysql/support-files/mysql.server stop
(3)进入或退出mysql
// 进入mysql(要求输入mysql登录密码)
mysql -u root -p
// 退出mysql
exit
注意:进入mysql时,有时候会因为忘记密码导致进入失败,解决方法是重置密码。
1)在系统设置方法中,或在终端通过命令关闭mysql服务
2)在终端使用命令sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables,以安全模式启动mysql服务
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
3)打开另一个终端
4)在终端执行命令sudo /usr/local/mysql/bin/mysql -u root(此时要求输入的密码为用户开机密码)
sudo /usr/local/mysql/bin/mysql -u root
5)在终端执行修改密码命令UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE User='root';,或UPDATE mysql.user SET Password =PASSWORD('123456') WHERE User='root';
UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE User='root';
// 或
UPDATE mysql.user SET Password =PASSWORD('123456') WHERE User='root';
6)刷新FLUSH PRIVILEGES;
FLUSH PRIVILEGES;
修改完成后,即可以用新密码通过命令mysql -u root -p进入mysql。
mysql -u root -p
2、终端命令:
(1)查看版本号:mysql --version
或许查看是出现提示错误:command not found
解决方法:
(1)在终端进入目录:/usr/local/bin
cd /usr/local/bin/
(2)在终端设置mysql命令路径
sudo ln -fs /usr/local/mysql/bin/mysql mysql
3、数据库简单操作
(1)创建数据库:create database 数据库名称
(2)查看数据库:show databases;
(3)删除数据库:drop database 数据库名称
(4)打开数据库:use 数据库名称
示例:
// 创建数据库
create database VSTECS;
// 使用数据库
use VSTECS;
// 删除数据库
drop database VSTECS;
// 查看数据库
show databases;
4、数据表简单操作
(1)显示某个数据库中的所有表:show tables;
(2)显示数据表的结构:desc 表名;
(3)创建数据表:create tabel 表名(字段名称 字段类型, ……);
(4)添加新列:alter table 列名 add 字段名称 字段类型;
(5)删除数据表:drop table 表名;
(6)复制表:create table 新表名 like 被复制表名;
示例:
// 创建表(personId设置了关键值则不能重复)
create table personTable (personId int, name varchar(20), gender varchar(10), primary key(personId));
// 在表中添加新列
alter table personTable add age int;
// 查看表结构信息
desc personTable;
// 删除表
drop table personTable;
// 复制表
create table personInfo like personTable;
5、数据简单操作
(1)查询数据:select * from 表名 where 字段 = 值;
(2)插入数据:insert into 表名 (字段1, ……) values (值1, ……);
(3)更新数据:update 表名 字段=值,...,字段n=值n where 字段=值;
(4)删除数据:delete from 表名 where 字段=值;
示例:
// 查看数据
select * from personInfo; // 查询全部
select * from personInfo where age = 35; // 条件查询
// 插入数据
insert into personInfo (personId, name, gender, age) values (1000, 'devZhang', "male", 35);
// 更新数据
update personInfo set age = 25,name = "uiChen",gender='female' where personId = 1001;
// 删除数据
delete from personInfo where age = 23;
6、使用过程中的错误
(1)提示修改更新密码
SET PASSWORD=PASSWORD('123456');