MySQL基础入门知识你掌握了吗

本文主要给大家介绍MySQL基础入门知识,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下MySQL基础入门知识吧。

创新互联主营虹口网站建设的网络公司,主营网站建设方案,重庆APP开发公司,虹口h5微信小程序开发搭建,虹口网站营销推广欢迎虹口等地区企业咨询

一、安装篇:

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-server-5.0sudo apt-get remove mysql-server
sudo apt-get autoremove mysql-server
sudo apt-get remove mysql-common  ##卸载服务
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P #彻底清理

离线包安装

group add mysql

   mkdir /home/mysql

useradd -g mysql -d /home/mysql mysql    #添加用户

   copy mysql-5.0.45-linux-i686-icc-glibc23.tar.gz到/usr/local目录

   tar zxvf mysql-5.0.45-linux-i686-icc-glibc23.tar.gz

ln -s mysql-5.0.45-linux-i686-icc-glibc23 mysql

   cd /usr/local/mysql

chown -R mysql .

chgrp -R mysql .

scripts/mysql_install_db --user=mysql (一定要在mysql目录下执行,注意输出的文字,里边有修改root密码和启动mysql的命令)

./bin/mysqladmin -u root password 'passw0rd'  #修改root密码

配置

目录为/etc/mysql/mysql.cnf

/etc/mysql/conf.d/

/etc/mysql/mysql.conf.d/

主要配置:

bind-address 127.0.0.1(默认)

port 3306(默认)

datadir /var/lib/mysql(默认)

general_log_file /var/log/mysql/mysql.log

log_error /var/log/mysql/error.log

可选客户端navicat(图形界面)

tar zxvf navicat....tar.gz

./start_navicat

二、命令模式的操作

mysql -u root -p #登录

quit 退出

show databases;

use databasename1;

select database(); #查看当前使用的数据库

create database databasename1 charset=utf8;

drop database databasename1

三、数据

  1. 常见数据类型 

 int bit 整数

 decimal 小数

 varchar char字符串

 date time datetime 日期时间

 decimal(5,2)表示5位数,小数点后有两位

 varchar(3)和char(3)的区别:后者在填充2位的时候会自动补个空格

2.约束

 primary key:主键,物理上存储的顺序,满足第二范式

 not null:该字段不允许填写空值

 unique: 字段的值不允许重复

 default: 当不填写此值时会使用默认值,如果填写时以填写为准  

 foreign key:对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否存在,  如果存在则填写成功,如果不存在则填写失败并抛出异常

 说明:虽然外键约束可以保证数据的有效性,但是在进行数据的crud(增加、修改、删除、查询)  时,都会降低数据库的性能,所以不推荐使用,那么数据的有效性怎么保证呢?答:可以在逻辑层进  行控制

四、数据库设计

   三范式
  • 经过研究和对使用中问题的总结,对于设计数据库提出了一些规范,这些规范被称为范式

  • 数据库设计中一共有6个范式,一般需要遵守3范式即可

  • 第一范式(1NF):数据库表的每一列都是不可分割的原子数据项,即列不可拆分

  • 第二范式(2NF):建立在第一范式的基础上,要求数据库表中的每个实例或记录必须可以被唯一地区分,即唯一标识

  • 第三范式(3NF):建立在第二范式的基础上,任何非主属性不依赖于其它非主属性,即引用主键

 

  E-R模型
  • E表示entry,实体,设计实体就像定义一个类一样,指定从哪些方面描述对象,一个实体转换为数据库中的一个表

  • R表示relationship,关系,关系描述两个实体之间的对应规则,关系的类型包括包括一对一、一对多、多对多

  • 关系也是一种数据,需要通过一个字段存储在表中

  • 实体A对实体B为1对1,则在表A或表B中创建一个字段,存储另一个表的主键值

 逻辑删除
  • 对于重要数据,并不希望物理删除,一旦删除,数据无法找回

  • 删除方案:设置isDelete的列,类型为bit,表示逻辑删除,默认值为0

  • 对于非重要数据,可以进行物理删除

  • 数据的重要性,要根据实际开发决定

看完以上关于MySQL基础入门知识,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。


分享标题:MySQL基础入门知识你掌握了吗
分享网址:http://myzitong.com/article/pcehch.html