随想录(数据库之基础篇)

2018-01-31 欧阳

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

因为工作的需要,利用周末的时间学习了一下数据库。从上学以来,用过的db不算多。除了windows的access和sql server,大概就用过sqlite3和mysql了。至于很多朋友用过的postgresql、oracle,只是大概了解过,没有机会真正实操。所有这些数据库中,用的比较多的大概还是mysql,自从被oracle公司收购以后,mysql在稳定性和性能上有了很大的提升,甚至以前多年的bug都被修正了,很不容易。但是,mysql也分社区版和商业版,这一点要注意一下。

1、mysql资料

网上关于mysql的资料很多,比如 ,还有 。如果喜欢视频学习的朋友,可以到麦子学院上面看看,比如 。写这篇blog,只是自己作为一个学习记录,并不一定比这些网上资料要好,而且这篇文章也只是侧重于基础,并无什么特别之处。

2、安装mysql

在ubuntu 14.04上面安装mysql很容易,只需要用apt-get安装即可,比如

sudo apt-get install mysql-server
sudo apt-get install mysql-client

安装过程中,一般会要求你设置mysql的密码,输入一个自己熟悉的密码就可以了。默认安装的mysql版本应该是5.5版本,目前为止最新的版本应该是5.7。建议大家可以从基础版本学起,等到用到mysql高级特性的时候再来学也不迟。另外,一般mysql安装后,server就自动启动起来了,大家可以用命令确认一下,

ps aux | grep mysqld

3、操作mysql

mysql作为一个服务器程序,本身一直是在运行的。所以,我们一般用mysql-client来连接服务器。

mysql -h 127.0.0.1 -u root -p

此时输入密码,即可与mysql服务器进行通讯。当然,用命令来操作mysql,一般是设计数据库、学习数据库或者debug的时候才会用到,平常这些工作都是有具体的编程语言来完成的。

4、创建数据库

create database shop;

5、删除数据库

drop database shop;

6、查看数据库

show databases;

7、创建表

create table customer (
    uid INT,
    name VARCHAR(32),
    gender VARCHAR(32)
);

8、删除表

drop table customer;

9、查看表

show tables;

10、查看表中数据

select * from customer;

11、带条件查看表中数据

select * from customer where name = 'tom';

12、带条件查看表中数据且排序

select * from customer where gender = 'male' order by uid;

13、删除数据

delete from customer where name = 'tom';

14、更新数据

update customer set gender = 'male' where name = 'tom';

15、插入数据

insert into customer(uid, name, gender) values (1, 'jack', 'male');

16、创建db的用户

create user 'admin@192.168.0.2' identified by '123456';

17、授予db用户权限

grant all privileges *.* to 'admin@192.168.0.2';

18、用脚本创建db

source shop.sql;

19、后续学习

有了这些命令做基础,基本上mysql就可以用起来了。大家可以在此基础上创建ER图,设计更多的db、更多的表结构,借鉴开源项目的db设计方法,进一步丰富自己的myql知识,并快速地将它用到自己的项目中。