linux下的mysql

来源:互联网 发布:手机优化软件排名第一 编辑:程序博客网 时间:2024/04/23 19:00
一. 认识和安装mysql   1. 认识mysql      (1) mysql是一种网络数据库服务器产品      (2) mysql是开源的免费的      (3) mysql是关系型数据库管理系统,支持SQL.      (4) mysql无溢出漏洞      (5) mysql提供丰富的API      (6) mysql提供丰富的数据类型      (7) mysql具较强的移值性   2. 安装mysql软件      (1) rpm安装方式         #rpm -ivh perl-CGI....                   perl-DBI....                   perl-DBD-MySQL.....                   mysq-....                   mysql-server....                   mysql-devel.....     (2) 编译安装方式         #groupadd mysql         #useradd -g mysql mysql         #tar -xzvf mysql-4.1.19.tar.gz         #cd mysql-4.1.19         #./configure --prefix=/usr/local/mysql         #make         #make install         #cp support-files/my-medium.cnf /etc/my.cnf         #cd /usr/local/mysql         #bin/mysql_install_db --user=mysql         #chown -R root .         #chown -R mysql var         #chgrp -R mysql .3. 启动mysql服务     (1) rpm方式安装的mysql        -设置自动启动         #ntsysv --level 3        -手工启动         #service mysqld start     (2) 编译安装的mysql        -设置自动启动         #vi /etc/rc.d/rc.local          .......         /usr/local/mysql/bin/mysqld_safe&          ........        -手工启动         #/usr/local/mysql/bin/mysqld_safe&二、mysql的管理    1. 如何连接mysql服务器      (1) Linux客户机    #mysql [-h服务器地址] [-u用户名] [-p口令] [数据库名]   实例:      #mysql       mysql>      #mysql -h192.168.3.1 -uadmin -plinux        mysql>      (2) Windows客户机       -利用第三方mysql客户端软件       -利用浏览器连接(服务器必须安装web管理平台,如:phpmyadmin/webmin)    注:webmin的安装方法        #tar -xzvf webmin-1.25.tar.gz        #cd webmin-1.25        #./setup.sh    2. 数据库管理      (1) 认识mysql的数据库          -mysql服务器默认建立两个数据库,分别是mysql和test;其中mysql是系统数据库;test是学习数据库          -mysql服务器上的每个数据库都会在相应路径中建立与库同名的目录          -每个数据库可包含若干张表,每张表由*.frm、*.MYD和*.MYI文件构成     (2) 创建数据库         #mysql         mysql>create database 数据库名;        实例:         mysql>create database dbinfo;     (3) 查看服务器上已创建的数据库         #mysql         mysql>show databases;     (4) 打开数据库         #mysql         mysql>use 数据库名;        实例:         mysql>use db1;     (5) 删除数据库          #mysql         mysql>drop database 数据库名;         实例:         mysql>drop database dbinfo;    3. 数据表的管理       (1) mysql提供的数据类型          -数字型           TINYINT   1字节           SMALLINT 2字节          MEDIUMINT   3B         INT 4B         BIGINT 8B         FLOAT[(M,D)] 4B         DOUBEL[(M,D)] 8B         DECIMAL(M,D)        -字符串型          char(M)          varchar(M)         tinytext          text         mediumtext          longtext         enum('..',...)         set(....)      -日期时间型        date        datetime        time      (2) 创建表         #mysql         mysql>use 数据库;         mysql>create table 表名 (                 列名 数据类型 属性/约束;                 .......                 .....               ) 表选项;         列属性/约束:            null/not null 是否允许为null            default 值 定义列的默认值            primary key 定义主键            check 表达式 定义列的取值范围            REFERENCES 表名(列名) 定义外部键        表选项:            TYPE=HEAP/ISAM/MYISAM/INNOBDB/BDB/MERGE //定义数据表引擎类型        实例:         mysql>use db1         mysql>create table users (             ->id varchar(10) primary key,             ->name varchar(20) not null,             ->password varchar(30) not null) TYPE=MYISAM;        (3) 查看数据库中已建立的表         #mysql         mysql>use 数据库;         mysql>show tables;        (4) 查看表的结构         #mysql         mysql>use 数据库;         mysql>describe 表名;        (5) 修改表的结构         #mysql         mysql>use 数据库;         mysql>alter table 表名               add 列定义    //添加列              |drop 列名    //删除列              |add index 索引名 (列名) //添加索引              |drop index 索引名 //删除索引              |modify 列定义 //修改列的定义              |add primary key (列名) //添加主键              |drop primary key //删除主键              |rename 新表名 //修改表名称      实例:mysql>alter table users add memo text;        (6) 向表中插入数据        #mysql         mysql>insert into 表名[(列名,...n)] values (值,...)      实例:        mysql>insert into users values ('0001','user1','linux','system admin');       (7) 查看表中数据        #mysql         mysql>select 列名 [as 别名] [,...n]|*|表达式              ->from 表名[,...n]             ->[where 条件表达式]             ->[order by 列名]             ->[group by 列名]             ->[having 条件表达式]      实例:       mysql>select * from users;       mysql>select user,password from users;       mysql>select user,password from users where name='user1';       mysql>select * from users order by id desc;       mysql>select 性别, count(*) as 人数 from 学生 group by 性别;     (8) 删除表中数据       #mysql         mysql>delete from 表名 [where 条件表达式];    实例:         mysql>delete from users;         mysql>delete from users where name='user1';     (9) 修改表中数据       #mysql          mysql>update 表名 set 列名=值 [where 条件表达式];     实例:         mysql>update users set password='132' where name='user1';    (10) 删除表       #mysql         mysql>drop table 表名;     实例:         mysql>drop table users;
原创粉丝点击