• 常用MySQL操作


    常用MySQL操作

    更改MySQL数据库root的密码

    将绝对路径加入环境变量并设置开机启动

    # PATH=$PATH:/usr/local/mysql/bin

    # echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

    # source /etc/profile

    给root用户设定密码

    # mysqladmin -uroot password '123456'

    root用户是MySQL自带的管理员账户,默认没有密码

    连接数据库

    # mysql -uroot -p'123456'

    # mysql -uroot -p -h192.168.37.13 -P3306

    -h   指定远程主机的IP

    -P   指定远程主机MySQL的绑定端口,默认都是3306

    退出时输入quit或者exit

    MySQL基本操作的常用命令

    mysql命令的结尾处需要加一个分号;

    查询当前库

    > show databases;

    查询某个库的表

    切换到某个库

    > use mysql;

    列出表

    > show tables;

    查看某个表的全部字段

    > desc db;

    想要显示更详细的信息

    > show create table dbG;

    G   让列出来的结果竖排显示

    查看当前用户

    > select user();

    查看当前所使用的数据库

    > select database();

    创建一个新库

    > create database db1;

    创建一个新表

    > create table t1 (`id` int(4),`name` char(40));

    字段名id和name需要用反引号括起来

    查看当前数据库的版本

    > select version();

    查看MySQL的当前状态

    > show status;

     中间省略信息

     

    查看MySQL的参数

    > show variables;

    其中很多参数可以在/etc/my.cnf中定义,有部分参数可以在线编辑

    修改MySQL的参数

    > show variables like 'max_connect%';

    符号%表示通配

    > set global max_connect_errors=1000;

    临时修改某些参数,但是重启服务后修改会失效 

     

    > show variables like 'max_connect_errors';

     

    查看当前MySQL服务器的队列

    > show processlist;

    查看当前MySQL的进程,查看是否有锁表

    创建一个普通用户并授权

    > grant all on *.* to user1 identified by '123456';

    all表示所有的权限(如读、写、查询、删除等操作);两个*,前者表示所有的数据库,后者表示所有的表;identified by后面跟密码,用单引号括起来

    > grant all on db1.* to 'user2'@'192.168.37.13' identified by '111222';

    给网络其他机器的某个用户授权,用户和主机IP之间有符号@

    > grant all on db1.* to 'user3'@'%' identified by '231222';

    主机IP可以用%替代,表示所有主机 

    常用的SQL语句

    查询语句

    第一种

    > select count(*) from mysql.user;

     mysql.user表示MySQL库的user表

     count(*)表示表中共有多少行

    第二种

    > select * from mysql.db;

    表示查询MySQL库的db表中的所有数据

    > select db from mysql.db;

    查询单个字段

    > select db,user from mysql.db;

    查询多个字段

    > select * from mysql.db where host like '192.168.%';

    在查询语句中可以使用万能匹配符%

    插入一行

    > insert into db1.t1 values (1,'abc');

    更改表的某一行

    > update db1.t1 set name='aaa' where id=1;

    MySQL表里存放的数据支持更改某个字段

    清空某个表的数据

    > truncate table db1.t1;

    不删除表,只是清空表的数据

    删除表

    > drop table db1.t1;

    直接删除表和表内数据

    删除数据库

    > drop database db1;

    MySQL数据库的备份与恢复

    # mysqldump -uroot -p'123456' mysql > /tmp/mysql.sql

    备份,重定向到一个文本文档里

    # mysql -uroot -p'123456' mysql < /tmp/mysql.sql

    恢复,和备份相反

     

  • 相关阅读:
    Java 中的按值传递
    字符串排序(非字典排序)
    字符串匹配的KMP算法(转)
    效率更高的整数转化为字符串函数
    Trie 树(转)
    C 语言字符串(译)
    linux 下 epoll 编程
    CSS攻击:记录用户密码
    Wireshark(抓包神器)使用方法
    搭建KVM环境——Linux上安装KVM带web管理界面
  • 原文地址:https://www.cnblogs.com/tui463/p/12377795.html
Copyright © 2020-2023  润新知