最近在做一个关于云计算安全系统的项目,需要用到MySQL数据库,现在把Ubuntu中建立数据库的步骤记录下来。
一、用命令在Ubuntu上安装MySQL
# sudo apt-get update
# sudo apt-get upgrade
# sudo apt-get -f install
1. sudo apt-get install mysql-serve
2. apt-get isntall mysql-client
3. sudo apt-get install libmysqlclient-dev
注:如果安装过程中有未发现的包,请用命令sudo apt-get update更新软件包。
安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功:
sudo netstat -tap | grep mysql
通过上述命令检查之后,如果看到有mysql的socket处于 listen状态则表示安装成功。
登陆mysql数据库可以通过如下命令:
mysql -u root -p
-u 表示选择登陆的用户名, -p 表示登陆的用户密码,上面命令输入之后会提示输入密码,此时输入密码就可以登录到mysql。
注:本程序中选择的登录用户名为lza,密码为123456。
二、
建立数据库
在mysql命令下赋予用户权限,即:
mysql>GRANT ALL ON *.* TO lza@localhost IDENTIFIED BY ‘123456’ ;
登录并创建数据库,即:
mysql -u lza -p
123456
mysql>CREATE DATABASE project; 注:本程序中所用数据库名为project。
Query OK,.....
mysql>use project
现在,可以在数据库project中添加我们想要的表和信息了。在以后的登录中,可以在命令行的结尾指定数据库,而不需要再使用use命令了,即:
mysql -u lza -p project
在按提示输入密码后,将自动切换到使用数据库project。
如图:
三、
向数据库中添加表和信息
建立一个名为unit的表
<p align="left"> --
<p align="left"> -- create the table unit
<p align="left"> --
<p align="left"> mysql>create table unit(
<p align="left"> id int(11) not null auto_increment,
<p align="left"> unit_name varchar(80) not null,
<p align="left"> primary key(id)
<p align="left"> ) ENGINE=InnoDB DEFAULT
<p align="left"> CHARSET=gb2312;
Query OK,.....
<p align="left"> 建立成功
<p align="left"> --
<p align="left"> -- populate the table 'unit'
<p align="left"> --
<p align="left"> 向表中添加信息
<p align="left"> insert into unit(id,unit_name) values('1','西安电子科技大学’);
<p align="left"> insert into unit(id,unit_name) values('2','西北工业大学');
<p align="left"> insert into unit(id,unit_name) values('3',’西安交通大学’);
Query OK,.....
<p align="left"> 建立unit表成功后,可用命令查看,即:
mysql>select * from unit;
<p align="left"> 建立一个名为files的表
<p align="left"> --
<p align="left"> -- create the table files
<p align="left"> --
<p align="left"> mysql>create table files(
<p align="left"> id int(11) not null auto_increment,
<p align="left"> fname varchar(50) not null,
<p align="left"> 校长 varchar(10) default null,
<p align="left"> 院长 varchar(10) default null,
<p align="left"> 老师 varchar(10) default null,
<p align="left"> 学生 varchar(10) default null,
<p align="left"> primary key(id)
<p align="left"> )ENGINE=InnoDB DEFAULT
<p align="left"> CHARSET=gb2312;
<p align="left"> 建立成功
<p align="left"> --
<p align="left"> -- populate the table 'users'
<p align="left"> --
<p align="left"> 向表中添加信息
<p align="left"> insert into files(fname,校长,院长,老师,学生) values('文件01','RWO','RW','R','R');
<p align="left"> insert into files(fname,校长,院长,老师,学生) values('文件02','RW','RW','RWO','R');
<p align="left"> insert into files(fname,校长,院长,老师,学生) values('文件03','R','RWO','RW','R');
<p align="left"> insert into files(fname,校长,院长,老师,学生) values('文件04','RWO','R','RW','R');
用命令查查,如图:
建立一个名为users的表
<p align="left"> --
<p align="left"> -- create the table use
<p align="left"> --
<p align="left"> mysql>create table users(
<p align="left"> id int(11) not null auto_increment,
<p align="left"> loginid varchar(20) not null,
<p align="left"> pass_word varchar(20) not null,
<p align="left"> name varchar(20) not null,
<p align="left"> sex int(11) default null,
<p align="left"> unitid int(11) not null,
<p align="left"> title varchar(10) not null,
<p align="left"> primary key(id),
<p align="left"> index wu_ind(unitid),
<p align="left"> constraint unit_info foreign key(unitid) references unit(id) on update cascade on delete cascade
<p align="left"> )ENGINE=InnoDB DEFAULT
<p align="left"> CHARSET=utf8;
<p align="left"> 建立成功
<p align="left"> --
<p align="left"> -- populate the table 'users'
<p align="left"> --
<p align="left"> 向表中添加信息
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120700','123456','王宝国',0,1,'校长');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120701','123456','刘波',0,1,'院长');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120702','123456','周伟',0,1,'老师');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120703','123456','张紫焉',1,1,'老师');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120704','123456','李强',0,1,'学生');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120705','123456','赵刚',0,1,'学生');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120706','123456','上官菲菲',1,1,'学生');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120710','123456','张浩然',0,2,'校长');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120711','123456','李通',0,2,'院长');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120712','123456','白露',1,2,'老师');
<p align="left"> insert into users(loginid,pass_word,name,sex,unitid,title) values('1101120713','123456','孙卓',1,2,'学生');
<p align="left"> Query ok,...
用命令查查,如图: