一、安装篇:
sudo apt-get install mysql-server , #下载 (sudo apt-get install php5-mysql(安装php5-mysql 是将php和mysql连接起来,),) sudo service  mysql start #启动服务 sudo service  mysql restart #重启服务 sudo apt-get  autoremove ——purge  mysql服务器- 5.0 sudo apt-get remove mysql服务器 sudo apt-get  autoremove mysql服务器 sudo apt-get  remove mysql-common , # #卸载服务 dpkg -l  | grep ^ rc | awk & # 39; {print $ 2} & # 39;, | sudo xargs dpkg -P #彻底清理
离线包安装
组添加mysql
,,mkdir/home/mysql
useradd mysql - g - d/home/mysql mysql,,#添加用户
,mysql-5.0.45-linux-i686-icc-glibc23.tar副本。广州到/usr/当地目录
,,焦油zxvf mysql-5.0.45-linux-i686-icc-glibc23.tar。广州
ln - s mysql-5.0.45-linux-i686-icc-glibc23 mysql
,,cd/usr/local/mysql
乔恩- r mysql。
chgrp - r mysql。
脚本/mysql_install_db——用户=mysql(一定要在mysql目录下执行,注意输出的文字,里边有修改根密码和启动mysql的命令)
。/bin/mysqladmin - u root密码& # 39;passw0rd # 39;,#修改根密码
配置
目录为/etc/mysql/mysql.cnf
/etc/mysql/conf.d/
/etc/mysql/mysql.conf.d/
主要配置:
bind-address 127.0.0.1(默认)
3306端口(默认)
datadir/var/lib/mysql(默认)
general_log_file/var/log/mysql/mysql.日志
log_error/var/log/mysql/error.日志
可选客户端navicat(图形界面)
焦油zxvf navicat .... tar.gz
。/start_navicat
二,命令模式的操作
mysql - u root - p #登录
辞职退出
显示数据库;
使用databasename1;
选择数据库();#查看当前使用的数据库
创建数据库databasename1 charset=use utf8;
删除数据库databasename1
三,数据
- <李>
常见数据类型,
李>, int一点整数
,小数小数
, varchar char字符串
,日期时间datetime日期时间
,小数(5,2)表示5位数,小数点后有两位
, varchar(3)和char(3)的区别:后者在填充2位的时候会自动补个空格
2。约束
对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否存在,,如果存在则填写成功,如果不存在则填写失败并抛出异常
,说明:虽然外键约束可以保证数据的有效性,但是在进行数据的crud(增加,修改,删除,查询),时,都会降低数据库的性能,所以不推荐使用,那么数据的有效性怎么保证呢?答:可以在逻辑层进,行控制
四,数据库设计
,,三范式
- <李>
经过研究和对使用中问题的总结,对于设计数据库提出了一些规范,这些规范被称为范式
李> <李>数据库设计中一共有6个范式,一般需要遵守3范式即可
李> <李>第一范式(1 nf):数据库表的每一列都是不可分割的原子数据项,即列不可拆分
李> <李>第二范式(2 nf):建立在第一范式的基础上,要求数据库表中的每个实例或记录必须可以被唯一地区分,即唯一标识
李> <李>第三范式(3 nf):建立在第二范式的基础上,任何非主属性不依赖于其它非主属性,即引用主键
李>,
,E - R模型
- <李>
E表示,实体,设计实体就像定义一个类一样,指定从哪些方面描述对象,一个实体转换为数据库中的一个表
李> <李>R表示关系,关系,关系描述两个实体之间的对应规则,关系的类型包括包括一对一,一对多、多对多
李> <李>关系也是一种数据,需要通过一个字段存储在表中
李> <李>实体一个对实体B为1对1,则在表一个或表B中创建一个字段,存储另一个表的主键值
李>,逻辑删除
- <李>
对于重要数据,并不希望物理删除,一旦删除,数据无法找回
李> <李>删除方案:设置isDelete的列,类型为,表示逻辑删除,默认值为0
李> <李>对于非重要数据,可以进行物理删除
李> <李>数据的重要性,要根据实际开发决定
李>