zoukankan      html  css  js  c++  java
  • 常用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

    恢复,和备份相反

     

  • 相关阅读:
    67. Add Binary
    66. Plus One
    64. Minimum Path Sum
    63. Unique Paths II
    How to skip all the wizard pages and go directly to the installation process?
    Inno Setup打包之先卸载再安装
    How to change the header background color of a QTableView
    Openstack object list 一次最多有一万个 object
    Openstack 的 Log 在 /var/log/syslog 里 【Ubuntu】
    Git 分支
  • 原文地址:https://www.cnblogs.com/tui463/p/12377795.html
Copyright © 2011-2022 走看看