MySql数据库的安装和使用

来源:互联网 发布:淘宝运营公司排名 编辑:程序博客网 时间:2024/05/18 18:19

一   安装MySQL

      1  下载MySQL的安装文件

           安装MySQL需要两个文件:

            (a) MySQL-server-5.5.25a-1.linux2.6.i386.rpm

            (b) MySQL-client-5.5.25a-1.linux2.6.i386.rpm

           下载地址为:http://www.mysql.com/downloads/mysql-4.0.html,你如果不想自己动手可到我的csdn里免分下载。

      2  安装MySQL

           rpm文件是Red Hat公司开发的软件安装包,rpm可以让linux在安装软件包时免除许多复杂的手续,该命令在安装时常用的参数是 -ivh,其中i表示将安装指定的rpm软件包,v表示安装时的详细信息,h表示在安装期间出现"#"符号来显示目前的安装过程.这个符号将持续到安装完成后才停止.

           (a) 安装服务器端

           在有两个rpm文件的目录下运行如下命令:

           rpm -ivh MySQL-server-5.5.25a-1.linux2.6.i386.rpm

           测试是否成功可运行netstat看Mysql端口是否打开,如打开表示服务已经启动,安装成功,Mysql默认的端口是3306.

           [root@test1 local]# netstat -nat
      Active Internet connections (servers and established)
      Proto Recv-Q Send-Q Local Address      Foreign Address     State   
      tcp  0  0 0.0.0.0:3306     0.0.0.0:*      LISTEN 

            上面显示可以看出MySQL服务已经启动.

           (b) 安装客户端

           rpm -ivh MySQL-client-5.5.25a-1.linux2.6.i386.rpm 

           用下面的命令连接mysql,测试是否成功。

          

           由于安装MySQL完后,MySQL会自动提供一个不带密码的root用户,为了安全起见给root设置密码:

           # /usr/bin/mysqladmin   -u  root  password  123 (123为密码,也可以写成:'123'或"123");

           设置密码后登入时就不能直接输入mysql了,必须跟些参数了,如下:

           # mysql  -u  root  -p (-u 后跟登入的用户名,-p提示要密码登入)

              Enter  password:(输入密码)

           出现了“mysql>”提示符,恭喜你,安装成功。

          

           修改密码:

            # /usr/bin/mysqladmin   -uroot   -p123      password    123456 (password后跟的是需要更新的新密码)

            Enter password:(输入原始密码,回车即可)

            修改密码时-u和用户名之间不能有空格,如-uroot(在centos6.0下试验过,其他系统不知道吗情况!),

            -p和原来的旧密码之间也不能有空格,如-p123.

 

     二  MySQL的几个重要目录

           MySQL安装完成后不像SQL Server默认安装在一个目录,它的数据库文件,配置文件和命令文件分别在不同的目录,了解这些目录非常重要。

           (a) 数据库目录

                 /var/lib/mysql

           (b) 配置文件

                /usr/share/mysql(mysql.server命令及配置文件)

           (c) 相关命令

                /usr/bin(mysqladmin  mysqldump等命令)

           (d) 启动脚本

                /etc/rc.d/init.d (启动脚本文件mysqld的目录)

 

     三  启动与停止

           (a)  MySQL 的启动

                  service  mysqld   start.

           (b)  MySQL 的停止

                  service mysqld  stop

           (c)  MySQL 的重启

                  service  mysqld  restart

           (d)  MySQL 的自动启动

                  1  查看mysql是否在自动启动列表中

                       /sbin/chkconfig   --list

                  2  把MySQL添加到你系统的启动服务组里面去

                      /sbin/chkconfig  --add   mysqld

                  3  把MySQL从启动服务组里面删除

                       /sbin/chkconfig   --del   mysqld

                  4  在自动启动列表里把MySQL自动启动打开

                      /sbin/chkconfig  mysqld   on

                  5  在自动启动列表里把MySQL自动启动关闭

                      /sbin/chkconfig  mysqld  off

      四  MySQL增加用户

            (1)   例、增加一个用户test2密码为abc,让其只可以在localhost上登录, 并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机, 即mysql数据库所在的那台主机),这样用户即使用知道test2的密码,也无法从internet上直接访问数据库,只能通过mysql主机上的web页来访问了。
                   grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
            如果你不想test2有密码,可以再打一个命令将密码消掉。
                    grant select,insert,update,delete on mydb.* to test2@localhost identified by "";

      五   MySQL的常用操作

  注意:MySQL中每个命令后都要以分号;结尾。

  1、显示数据库列表
  mysql> show databases;
  +----------+
  | Database |
  +----------+
  | mysql  |
  | test   |
  +----------+
  2 rows in set (0.04 sec)
  Mysql刚安装完有两个数据库:mysql和test。mysql库非常重要,它里面有MySQL的系统信息,我们改密码和新增用户,实际上就是用这个库中的相关表进行操作。

  2、显示数据库中的表
  mysql> use mysql; (打开库,对每个库进行操作就要打开此库,类似于foxpro )
  Database changed

  mysql> show tables;(显示数据库中的表)
  +-----------------+
  | Tables_in_mysql |
  +-----------------+
  | columns_priv  |
  | db       |
  | func      |
  | host      |
  | tables_priv   |
  | user      |
  +-----------------+
  6 rows in set (0.01 sec)

  3、显示数据表的结构:
        describe 表名;

  4、显示表中的记录:
  select * from 表名;
  例如:显示mysql库中user表中的纪录。所有能对MySQL用户操作的用户都在此表中。
  Select * from user;

  5、建库:
  create database 库名;
  例如:创建一个名字位aaa的库
  mysql> create database aaa;

        6、建表:
  use 库名;
  create table 表名 (字段设定列表);
  例如:在刚创建的aaa库中建立表name,表中有id(序号,自动增长),xm(姓名),xb(性别),csny(出身年月)四个字段
  use aaa;
  mysql> create table name (id int(3) auto_increment not null primary key, xm char(8),xb char(2),csny date);
  可以用describe命令察看刚建立的表结构。
  mysql> describe name;

  +-------+---------+------+-----+---------+----------------+
  | Field | Type  | Null | Key | Default | Extra     |
  +-------+---------+------+-----+---------+----------------+
  | id  | int(3) |   | PRI | NULL  | auto_increment |
  | xm  | char(8) | YES |   | NULL  |        |
  | xb  | char(2) | YES |   | NULL  |        |
  | csny | date  | YES |   | NULL  |        |
  +-------+---------+------+-----+---------+----------------+

  7、增加记录
  例如:增加几条相关纪录。
  mysql> insert into name values('','张三','男','1971-10-01');
  mysql> insert into name values('','白云','女','1972-05-20');
  可用select命令来验证结果。
  mysql> select * from name;
  +----+------+------+------------+
  | id | xm  | xb  | csny    |
  +----+------+------+------------+
  | 1 | 张三 | 男  | 1971-10-01 |
  | 2 | 白云 | 女  | 1972-05-20 |
  +----+------+------+------------+

  8、修改纪录
  例如:将张三的出生年月改为1971-01-10
  mysql> update name set csny='1971-01-10' where xm='张三';

  9、删除纪录
  例如:删除张三的纪录。
  mysql> delete from name where xm='张三';

  10、删库和删表
  drop database 库名;
  drop table 表名;

 

    六  MySQL的备份与恢复

       1、备份

  例如:将上例创建的aaa库备份到文件back_aaa中

  [root@test1 root]# cd /home/data/mysql (进入到库目录,本例库已由val/lib/mysql转到/home/data/mysql,见上述第七部分内容)
  [root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa

  2、恢复

  [root@test mysql]# mysql -u root -p ccc < back_aaa

 

原创粉丝点击