实验环境
? ? ? 某公司因业务范围日益扩大,最近订购了一套基于B/S架构的电子商务系统,在正式部署之前,要 求对现有的httpd服务器进行改造,首先需要增加MySQL数据库服务。
需求描述
1. 编译安装MySQL服务器,并添加为mysqld系统服务。
在上一章已经安装好了
2. 为MySQL数据库的root用户设置密码,删除用户名、密码为空的用户记录。
登录数据库?
[root@node01 ~]# mysql -u root //登录数据库,用户为root,密码为空
以下操作可以将数据库用户root的密码设为“abc.123”,当再次使用“mysql -u root -p ”访问MySQL数据库服务器时,必须使用此密码进行验证。?
以下操作可以将数据库用户root的密码设为“abc.123”,当再次使用“mysql -u root -p”访问MySOL数据库服务器时,必须使用此密码进行验证。
mysql> update mysql.user set password=password('abc.123') where user='root'; //update修改
mysql> flush privileges; //刷新用户授权信息
?在mysql数据库中查询用户为空的记录
mysql> select user,host,password from mysql.user where user='';
?删除上图的空用户
mysql> delete from mysql.user where user='';
3. 新建名为“bdqn”的库,授权用户rundb从本机访问,具有所有操作权限。
?创建名为bdqn的数据库
mysql> create database bdqn;
以下非实验内容
mysql>drop database bdqn; //删除数据库
GRANT语句:专门用来设置数据库用户的访问权限。当指定的用户名不存在时,GRANT语句将 会创建新的用户,否则,GRANT语句用于修改用户信息,语句格式如下所示。
在bdqn数据库中创建名为rundb的用户,localhost 允许本机登录,密码为abc.123,grant all 授权所有权限
mysql> grant all on bdqn.* to 'rundb'@'localhost' identified by 'abc.123';
4. 以rundb用户登录,在bdqn库中创建stuinfo表,并录入数据,如表3-2所示。
[root@node01 ~]# mysql -u rundb -p //登录数据库
创建名为stuinfo的表?
mysql>use bdqn //使用bdqn数据库
mysql> create table stuinfo (user_name char(16) not null,user_xingbie char(5) not null, user_nianling int not null,user_dianhua varchar(11) not null,userr_youjiandizhi nvarchar(50));
以下非实验内容
mysql> drop table bdqn.stuinfo; //删除bdqn数据库中的stuinfo表
创建成功?
mysql> show tables; //查看该数据库有几个表
mysql> describe stuinfo; //查看seuinfo表的结构
在表中录入数据
mysql> insert into stuinfo(user_name,user_xingbie,user_nianling,user_dianhua,user_youjiandizhi)
> values('zhangwuji','nan','19','17512345678','wuji.zhang@mingchao.org'),
> ('baijuyi','nan','24','17587654321','juyi.bai@tangchao.org'),
> ('lancaihe','nu','21','17255201314','caihe.lan@wudaisong.org');
以下非实验内容
mysql> delete from bdqn.stuinfo where user_name='zhangwuji'; //删除bdqn数据库stuinfo表中名为zhangwuji的记录
mysql> update bdqn.stuinfo set user_dianhua='11122233344' WHERE user_name='zhangwuji'; //修改stuinfo表中用户名为“zhangwuji”的记录,将手机号修改为 11122233344 。
mysql> select * from stuinfo; //查看stuinfo表中的内容
mysql> select * from bdqn.stuinfo; //查看bdqn数据库中stuinfo表的内容
以上实验以结束,以下是一些操作数据库的基础命令
mysql> show databases; //查看当前服务器中有哪些数据库
mysql> show tables; //查看当前服务器中有哪些表
? ? 当需要根据特定的条件查找记录时,WHERE条件子句是必不可少的。例如,若要查找 stuinfo表 中用户名为“zhangwuji”的记录,显示其中姓名、年龄字段的信息,可以执行以下操作。
mysql> select user_name,user_nianling from bdqn.stuinfo where user_name='zhangwuji';