设为首页 收藏本站
查看: 1037|回复: 0

[经验分享] mysql数据库安装及使用

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-7-2 10:31:28 | 显示全部楼层 |阅读模式
需求:
1:安装mysql 5.6数据库
2:建studb库,并建stuinfo学生表,要求建字段stu_id  name  age  sex  class  dizhi,建表时添加普通,唯一索引
3:在表中添加新字段名id为主键索引,并让id值自动增长,修改dizhi为home
4:新建stuchengji表,建表时设置外键关联stuinfo
5:为stuinfo表插入数据
6:导入文件passwd内容到新表passwd,导出 stuinfo表数据到/bak
实现步骤:
1:安装mysql程序,启动服务,设置为开机启动,备份主配置文件
[iyunv@localhost ~]# rpm -ivh MySQL-server-5.6.15-1.el6.x86_64.rpm \
>MySQL-client-5.6.15-1.el6.x86_64.rpm
>MySQL-devel-5.6.15-1.el6.x86_64.rpm
[iyunv@localhost ~]#service mysql start
[iyunv@localhost ~]#chkconfig mysql on
[iyunv@localhost ~]#cp /etc/{my.cnf,my.cnf.bak}
2:本机登录数据库,并改密码
[iyunv@localhost ~]# cat .mysql_secret
# The random password set for the root user  (local time): w3GQUyIV                //安装时随机生成的密码
[iyunv@localhost ~]#mysql -hlocalhost -uroot -pw3GQUyIV                                 //第一次登录时用root的随机密码登录
1
2
mysql>SET PASSWORD FOR ‘root’@’localhost’=PASSWORD(’123456’);
//第一次必须改密码否则没操作权




3:建立studb库
1
mysql> create database studb;




4:进入studb库建立stuinfo表
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
mysql> use studb;                                 //进入studb数据库操作
mysql> create table stuinfo(                      //建立stuinfo表
    -> stu_id int(13),                                                
    -> name varchar(15) not null,
    -> age tinyint(2) not null default 22,
    -> sex enum("boy","girl") not null default “boy”,
    -> class varchar(8) default "NSD1404",
    -> dizhi varchar(30),
    -> index(name),                                           //给字段name建普通索引
    -> unique(stu_id));                                        //给stu_id建唯一索引
mysql> desc stuinfo;                                           //查看表结构
+--------+--------------------+------+-----+---------+-------+
| Field  | Type               | Null | Key | Default | Extra |
+--------+--------------------+------+-----+---------+-------+
| stu_id | int(13)            | YES  | UNI | NULL    |       |
| name   | varchar(15)        | NO   | MUL | NULL    |       |
| age    | tinyint(2)         | NO   |     | 22      |       |
| sex    | enum('boy','girl') | NO   |     | boy     |       |
| class  | varchar(8)         | YES  |     | NSD1404 |       |
| dizhi  | varchar(30)        | YES  |     | NULL    |       |
+--------+--------------------+------+-----+---------+-------+




5:添加新字段id为主键索引,并让id值自动增长,并修改字段dizhi为home
1
2
3
mysql> alter table stuinfo add id int primary key auto_increment first;   
// 加新字段id为主键,并让id值自动增长
mysql> alter table stuinfo change dizhi home varchar(30);        //修改字段名




6:新建stuchengji表,建表时设置外键关联stuinfo
1
2
3
mysql> create table stuchengji(
    -> stu_id int(13), chengji int(3),
    -> foreign key(stu_id) references stuinfo(stu_id) on update cascade on delete cascade    -> );    //stu_id外键了stuinfo表




7:为stuinfo插入数据
1
2
3
4
5
6
7
8
mysql>insert into stuinfo values(null,12014002,"sw",30,"boy","NSD1404"," ");  
//id字段插入null占位
mysql> select * from stuinfo;                            //查看表
+----+----------+------+-----+-----+---------+------+
| id | stu_id   | name | age | sex | class   | home |
+----+----------+------+-----+-----+---------+------+
|  1 | 12014001 | sw   |  30 | boy | NSD1404 |      |
+----+----------+------+-----+-----+---------+------+




8:导入passwd ,然后导出数据到/bak
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
mysql> create table passwd(                       //为要导入的数据建立模板表
    ->name varchar(15) primary key,
    ->mina varchar(1),
    ->uid int(5) not null,
    -> gid int(5) not null,
    ->miaoshu varchar(35),
    ->home varchar(50),
    ->shell varchar(50) not null,
    ->unique(uid));
mysql> desc passwd;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name    | varchar(15) | NO   | PRI | NULL    |       |
| mina    | varchar(1)  | YES  |     | NULL    |       |
| uid     | int(5)      | NO   | UNI | NULL    |       |
| gid     | int(5)      | NO   |     | NULL    |       |
| miaoshu | varchar(35) | YES  |     | NULL    |       |
| home    | varchar(50) | YES  |     | NULL    |       |
| shell   | varchar(50) | NO   |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
mysql> load data infile"/etc/passwd" into table passwd  //导入passwd到表passwd并用:分隔
    -> fields terminated by ":";




[iyunv@localhost ~]# mkdir /bak
[iyunv@localhost ~]# setfacl -m u:mysql:rwx /bak                           //给mydql写权限
1
mysql> select * from stuinfo into outfile "/bak/stuinfo";         //导出




[iyunv@localhost ~]# cat /bak/stuinfo
112014001sw30boyNSD1404


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-21458-1-1.html 上篇帖子: mysql数据库基本操作练习 下篇帖子: mysql之通用二进制格式程序包安装 数据库安装 mysql
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表