Linux MySQL操作

一、启动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服务器(一)2009-06-15 11:18mysql服务器
一. 认识和安装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;

你可能感兴趣的:(mysql,linux)