mysql 安装
redhat ES3 安装光盘不集成mysql-server,只有一些工具。先把工具安装好。
利用添加/删除程序查看所需文件包,依次安装。
最后安装从网上下载的server 包 mysql-server-3.23.58-1.i386.rpm
因为es3 的客户工具是这个版本的所以下载这个版本
启动mysql :service mysqld start
进入/退出mysql:mysql / quit|exit|\q
命令方式:
命令以';'结尾
例:>select user(); 显示当前用户
一条命令多行:
例:>select
>user()
>;
取消执行用\c
多条命令一行:
>select user();show databases();
基本操作
显示数据库列表 show databases;
选定数据库 use 数据库名
显示当前数据库 select databases();
显示表的列表 show tables;
显示指定表的内容 select *[|字段名1,字段名2,字段名3…] from 表名 [where 条件]
例:select * from abc ;
选择abc表中所有的数据记录
select name,sex from abc where age>20 ;
选择abc表中所有age在20以上的name和sex字段中的内容
建立数据库 create database 数据库名
例:create database abc;
建立表 use 数据库名
create table 表名 (字段名1 类型,字段名2 类型,字段名3 类型,…)
例:create table dangan (name char(10),sex char(2),age int(3));
char(n) 定义字符型字段 长度为n
int (n) 定义整型字段 长度为n
添加记录 insert into 表名 values(字段1的值,字段2的值,字段3的值,…)
更新记录 update 表名 set 字段名=值 where 条件
删除记当 delete from 表名 where 条件
删除表 drop table 表名
删除数据库 drop database 数据库名
mysql的授权与连接
授权 grant all privileges on 数据库名.表名 to 用户名@主机名 identified by '口令'
例:grant all privileges on abc.* to
kkk@"%" identified by "123456"
创建一个mysql用户kkk密码为 123456 可以从任何主机访问数据库abc中的任何表。
连接:
利用客户端工具进行连接管理
mysql -u 用户名 -h mysql服务器主机名 -p
例:mysql -u kkk -h 223.16.0.144 -p
以kkk用户的身份连接到 223.16.0.144 主机的mysqlserver上。
PHP中连接mysql
<?
$db=mysql_connect('223.16.0.144','kkk','123456') //主机名,用户名,密码
mysql_select_db('abc'); //选择数据库
$query="select * from dangan" //结构化查询语语
$res=mysql_query($query,$db); //执行结构化查询语句
$row=mysql_fetch_row($res); //获取当前记录信息,放到数组中
echo "<br>姓名:".$row[0]; //输出第一个字段内容
echo "<br>性别:".$row[1]; //输出第二个字段内容
echo "<br>年龄:".$row[2]; //输出第三个字段内容
?>
例:计数器的制作
1 建数据库 create database webdata;
建表 create table jsq (count int(10));
初始化计数器 insert into jsq values(10000);
授权用户 grant all privileges on webdata.* to jsq@"%" identified by "123456";
2 配置apache网站
3 书写计数器代码
<?
$db=mysql_connect('223.16.0.144','jsq','123456');
mysql_select_db('webdata');
$query="select * from jsq";
$res=mysql_query($query,$db);
$row=mysql_fetch_row($res);
$a=$row[0]+1; //获取数值累加1
echo "<br>您是第 ".$a." 位来访者"; //显示
$qq="update jsq set count=".$a; //将累加后的数值更新到数据库中
mysql_query($qq,$db);
?>
数据存储位置:/var/lib/mysql
备份的两种方法
1 使用cp、tar等命令
2 使用mysqldump命令
先进入到数据存储位置:/var/lib/mysql
格式: mysqldump 数据库名 [表名1、表名2、表名3…] [|gzip]>/路径/备份文件名
例: ntsqldump hhg >/tmp/hhg.2005-10-05.mysql
注:可以备份整个数据库,也可以备份数据库中指定的表;
备份文件名最好有日期时间信息如:abc.2005-10-05.mysql
恢复的两种方法
1 使用cp、tar等命令
2 使用mysql命令
前提:有目标数据库,若没有则建立一个数据库
格式:mysql 数据库名 < /路径/备份文件名
例: mysql hhg < /tmp/hhg.2005-10-05.mysql