zoukankan      html  css  js  c++  java
  • MySQL常用命令

    原文链接:

    http://news.newhua.com/news1/program_database/2009/217/0921715343537K7H7IDI2CCI09JCI1DK8FJ4B07B3A04219G561C3JAB.html  

    其实这个链接可以用的但是我呢写成这样了:<a hrf=""></a>哈哈。

    1、MySQL常用命令

    create database name; 创建数据库

    use databasename; 选择数据库

    drop database name 直接删除数据库,不提醒

    show tables; 显示表

    describe tablename; 表的详细描述

    select 中加上distinct去除重复字段

    mysqladmin drop databasename 删除数据库前,有提示。

    显示当前mysql版本和当前日期

    select version(),current_date;

    2、修改mysql中root的密码:

    shell>mysql -u root -p

    mysql> update user set password=password(”xueok654123″) where user=’root’;

    mysql> flush privileges //刷新数据库

    mysql>use dbname; 打开数据库:

    mysql>show databases; 显示所有数据库

    mysql>show tables; 显示数据库mysql中所有的表:先use mysql;然后

    mysql>describe user; 显示表mysql数据库中user表的列信息);

    3、grant

    创建一个可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令something做这个

    mysql> grant all privileges on *.* to user@localhost identified by ’something’ with

    增加新用户

    格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”

    GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY ’something’ WITH GRANT OPTION;

    GRANT ALL PRIVILEGES ON *.* TO monty@”%” IDENTIFIED BY ’something’ WITH GRANT OPTION;

    删除授权:

    mysql> revoke all privileges on *.* from root@”%”;

    mysql> delete from user where user=”root” and host=”%”;

    mysql> flush privileges;

    创建一个用户custom在特定客户端it363.com登录,可访问特定数据库fangchandb

    mysql >grant select, insert, update, delete, create,drop on fangchandb.* to custom@ it363.com identified by ‘ passwd’

    重命名表:

    mysql > alter table t1 rename t2;

    4、mysqldump

    备份数据库

    shell> mysqldump -h host -u root -p dbname >dbname_backup.sql

    恢复数据库

    shell> mysqladmin -h myhost -u root -p create dbname

    shell> mysqldump -h host -u root -p dbname < dbname_backup.sql

    如果只想卸出建表指令,则命令如下:

    shell> mysqladmin -u root -p -d databasename > a.sql

    如果只想卸出插入数据的sql命令,而不需要建表命令,则命令如下:

    shell> mysqladmin -u root -p -t databasename > a.sql

    那么如果我只想要数据,而不想要什么sql命令时,应该如何操作呢?

       mysqldump -T./ phptest driver

    其中,只有指定了-T参数才可以卸出纯文本文件,表示卸出数据的目录,./表示当前目录,即与mysqldump同一目录。如果不指定driver 表,则将卸出整个数据库的数据。每个表会生成两个文件,一个为.sql文件,包含建表执行。另一个为.txt文件,只包含数据,且没有sql指令。

    5、可将查询存储在一个文件中并告诉mysql从文件中读取查询而不是等待键盘输入。可利用外壳程序键入重定向实用程序来完成这项工作。例如,如果在文件my_file.sql 中存放有查

    询,可如下执行这些查询:

    例如,如果您想将建表语句提前写在sql.txt中:

    mysql > mysql -h myhost -u root -p database < sql.txt

    6.select * from tablename where id = +id+ order by 时间 asc;

    asc  按升序排列

    desc 按降序

     

    mysql基本命令
    自己时不时也要用到点mysql,所以把这些基本命令记下来,方便以后查找。
    1. 进入
      $ mysql -u username -p
    2. 创建数据库
      mysql> CREATE DATABASE database_name;
    3. 删除数据库
      mysql> DROP DATABASE database_name;
    4. 显示所有数据库
      mysql> SHOW DATABASES;
    5. 操作数据库
      mysql> USE database_name;
    6. 创建表格
      mysql> CREATE TABLE table_name
        (
         ID int(7) NOT NULL AUTO_INCREMENT,
         Name varchar(50),
         Time varchar(20),
         Email varchar(50),
         Text varchar(1000),
         UNIQUE (`ID`)
        );
    7. 删除表格
      mysql> DROP TABLE table_name;
    8. 显示所有表格
      mysql> SHOW TABLES;
    9. 显示一个表格中的所有内容
      mysql> SELECT * FROM table_name
      -> ORDER BY ID DESC;#按照"ID"反向排序
    10. 用关键词查找表格中的内容
      mysql> SELECT * FROM table_name
      -> WHERE Name='string';#精确查找
      -> WHERE Name like '%string%';#模糊查找
    11. 删除表格中的某条记录
      mysql> DELETE FROM table_name
      -> WHERE Name='string';#删除表格中Name='string'的所有条目
    12. 编辑表格中的某条记录
      mysql> UPDATE table_name
      -> SET Name='$name',Time='$time',Email='$email',Text='$text'
      -> WHERE ID='$id';#修改ID为'$id'的条目中对应的各项内容
    13. 在表格中插入新的记录
      mysql> INSERT INTO table_name (Name, Time, Email, Text)
      -> VALUES
      -> ('$name','$time','$email','$text');
    14. 把一个表的内容复制到另一个表中
      mysql> INSERT INTO database_name.table_name1 SELECT * FROM database_name.table_name2
    15. 更改表结构:alter命令
      #重命名表
      mysql> ALTER TABLE table_name RENAME table_name_new;

      #删除列
      mysql> ALTER TABLE table_name DROP column_name;

      #增加列
      mysql> ALTER TABLE table_name ADD column_name varchar(20);
      mysql> ALTER TABLE table_name ADD column_name tinyint NOT NULL DEFAULT '1';

      #改变列的名称及类型
      mysql> ALTER TABLE table_name CHANGE column_name column_name_new new_type;
      mysql> ALTER TABLE table_name CHANGE column_name column_name_new tinyint NOT NULL DEFAULT '1';
    16. 创建mysql用户
      #创建用户donkey,具有全部权限,但只能从localhost连接数据库
      mysql> GRANT ALL PRIVILEGES ON *.* TO 'donkey'@'localhost'
      -> IDENTIFIED BY 'your_password' WITH GRANT OPTION;

      #创建用户donkeytail,具有全部权限,可以从任意主机连接数据库
      mysql> GRANT ALL PRIVILEGES ON *.* TO 'donkeytail'@'%'
      -> IDENTIFIED BY 'your_password' WITH GRANT OPTION;

      #创建用户admin,并被授予了reload和process的管理权限,这些权限允许admin执行mysqladmin reload、mysqladmin refresh和mysqladmin flush-xxx命令,以及mysqladmin processlist。
      mysql> GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';

      #创建用户dummy,未授予任何权限。但可以通过grant语句赋予权限
      mysql> GRANT USAGE ON *.* TO 'dummy'@'localhost';
    17. 删除用户
      mysql> DROP USER username@localhost;
    18. 改变mysql用户密码
      #用mysql命令改变用户密码
      $ mysql -u root -p
      mysql> USE mysql;
      mysql> UPDATE user
      -> SET password='new_password' WHERE User='username';
      mysql> FLUSH PRIVILEGES;#重载授权表

      #用mysqladmin命令改变用户密码
      $ mysqladmin -u root -p password NEWPASSWORD#提示输入旧密码后新密码生效
    19. 备份数据库
      #备份单个数据库
      $ mysqldump -u root -p database_name > backup.sql
      $ mysqldump --add-drop-table -u root -p database_name > backup.sql

      #备份表格
      $ mysqldump -u root -p database_name table1 table2 > backup.sql

      #备份多个数据库
      $ mysqldump -u root -p --all-databases | bzip2 -c > alldatabases.sql.bz2
      $ mysqldump -u root -p --databases database_1 database_2 > multibackup.sql
    20. 还原数据库备份
      $ mysql -u [username] -p [database_to_restore] < [backupfile]
      $ bzip -d < backupfile.bz2 | mysql -u [username] -p [database_to_restroe]
    21. 将数据库拷贝到另一台机器
      $ mysqladmin -h 'other_hostname' CREATE db_name#在目标机器上建立数据库
      $ mysqldump -u root -p db_name | mysql -h 'other_hostname' database_name
       
       
       

     

     

     
     
  • 相关阅读:
    23种设计模式-----行为模式
    23种设计模式-----创建型模式、结构型模式
    字节码操作、javassist使用
    反射机制(reflection)
    NFC手机
    NFC简介
    不同技术的过滤条件的定义
    [linux] ubuntu系统tips
    图算法(一)
    跳跃表skiplist
  • 原文地址:https://www.cnblogs.com/seniormonster/p/5087616.html
Copyright © 2011-2022 走看看