热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

mysql常用命令小结_MySQL

一、数据库级操作1、登陆mysql常用的26684;式是mysql-uuser_name-p按下回车后输入密码再次回车即可进入。2、查看当前已经存在的所有数据库showdatabases;
一、数据库级操作

1、登陆mysql

常用的格式是 mysql -u user_name -p 按下回车后输入密码再次回车即可进入。

2、查看当前已经存在的所有数据库

show databases; (注意,分号不可省略。少数命令可以忽略分号,但大部分的mysql命令都必须以分号结尾)

3、选择数据库

知道所有数据库名称后,需要选择某个具体的数据库进行操作,其命令为:

use database_name; (注意,这个命令是少数可以忽略分号的命令之一)

e.g. use students;

4、创建数据库

create database database_name; (这里可能需要root权限)

e.g. create database one; 这将创建名为one的数据库。

5、删除数据库

drop database database_name;

二、表级操作

1、查看当前数据库的所有表名

show tables;

2、查看某个表中的所有列名(属性信息)

describe table_name;(也可以简写为:desc table_name;)

show columns from table_name;

show create table table_name;

3、查看表中的某一列

select column_1 from table_name;

若想查看某几列则需要用逗号隔开列名,如:select column_1, column_2 from table_name;

也可以使用通配符* 查看所有列,如:select * from table_name;

4、创建表

create table table_name (column_name1 type constraint, column_name2 type constraint, ..., column_nameX type constraint, primary key (column_name));

这里的constraint包括not null(非空)、unique(不能重复)等,是选填的,即可以没有;

type包括char(n) varchar(n) int numeric float real double precision;(注意,mysql的字符串要用单引号括起来)

最后面的主键约束是必须要有的,primary key()括号里面的属性可以是一个,也可以是逗号隔开的几个。

5、删除表

drop table table_name; (这将彻底删除此表,即show tables;命令不会再显示它)

(注意与之相近的一个命令:delete from table_name; 这个命令只是清空该表,但是表模式仍然存在,即show tables;命令仍然显示它)

6、向表中添加/删除列名(属性名)

alter table table_name add column_name type;

alter table table_name drop column_name;

7、修改表中的某个列

alter table table_name change old_col new_col type;

三、行级操作

1、向表中添加行(记录,record)

insert into table_name values(....); (注意,括号里面的值必须要对应创建表时列的前后顺序,且用逗号隔开)

如果忘了列名的顺序且嫌查看顺序麻烦,可以用这种形式:

insert into table table_name(col_1, col_2, ... col_n) values (val_1, val_2, ... val_n);

这时只要val_n对应col_n就行了,而不用去管列名的真正顺序。

2、删除表中特定的行

delete from table_name where P;

P是一个条件,一般格式是:col_name = value,即属性等于某个值的一行。

3、修改/更新行

update table_name set col_name = new_val where P;

四、用户权限操作(一般需要root权限)

1、查看所有存在用户

select user from mysql.user;

2、查看当前用户

select user();

3、创建一个用户

create user user_name identified by 'passwd';

这就创建了一个名为user_name的用户,其可以使用密码passwd登陆mysql,但是其权限仅限于登陆而已,登陆之后什么也做不了。这就需要在赋予其相关权限之后才能进行某些操作。

如果没有后面的 identified by 'passwd',将会创建一个无密码的用户,登陆是只需输入 mysql -u user_name回车即可,不必再输入密码。

上面这条命令的效果和下面这条是一样的(前提是用root登陆):

insert into mysql.user(Host,User,Password) values('localhost','user_name',password('passwd'));

他们本质上都是修改了mysql的元数据库mysql中的表user,这个表记录着mysql的所有用户信息。注意到,第二条命令多了一个参数Host,这在第一条命令中是被默认的,但是在第二条中是必不可少的,否则将无法登陆本机的mysql。

当然Host的值是可以改动的,对于第二条命令,其改动是显然的;对于第一条命令,如果不想选择默认值'localhost',可以这样:

create user_name@other_host identified by 'passwd';

4、赋予用户相关权限

权限的范围包括经典的“增删改除”,以及代表所有的all等。整体格式如下:

grant privilege_list on database_name.table_name to user_name@'host_name';

privilege_list可以是select/update/delete/insert中的一个或几个(逗号隔开),或者直接用all代替,代表所有权限;

on则将权限限定在某个数据库的某个表上,这里可以使用通配符*代表所有,如database_one.* 就意味着在database_one的所有表上都有权限,当然database_name也可以用*替代 ;

to后面跟的是user_name, 后面的@'host_name'可以省略,默认值为localhost,也可以使用通配符%来代表所有主机。需要注意的是,如果user_name本来不存在的话,这个命令将创建一个新的用户,其名称就是user_name, 这就是另一种创建用户的方法,而且同时赋予了相关权限,我本人一般使用这种方法。需要密码的话,可以在后面添上 identified by 'passwd',否则就是无密码用户。

推荐阅读
  • 在数据分析工作中,我们通常会遇到这样的问题,一个业务部门由若干业务组构成,需要筛选出每个业务组里业绩前N名的业务员。这其实是一个分组排序的 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 数据库(外键及其约束理解)(https:www.cnblogs.comchenxiaoheip6909318.html)My ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • yum安装_Redis —yum安装全过程
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Redis—yum安装全过程相关的知识,希望对你有一定的参考价值。访问https://redi ... [详细]
  • 解决VS写C#项目导入MySQL数据源报错“You have a usable connection already”问题的正确方法
    本文介绍了在VS写C#项目导入MySQL数据源时出现报错“You have a usable connection already”的问题,并给出了正确的解决方法。详细描述了问题的出现情况和报错信息,并提供了解决该问题的步骤和注意事项。 ... [详细]
  • 本文介绍了关于apache、phpmyadmin、mysql、php、emacs、path等知识点,以及如何搭建php环境。文章提供了详细的安装步骤和所需软件列表,希望能帮助读者解决与LAMP相关的技术问题。 ... [详细]
  • 本文介绍了通过mysql命令查看mysql的安装路径的方法,提供了相应的sql语句,并希望对读者有参考价值。 ... [详细]
  • 本文详细介绍了MySQL表分区的创建、增加和删除方法,包括查看分区数据量和全库数据量的方法。欢迎大家阅读并给予点评。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • mysql-cluster集群sql节点高可用keepalived的故障处理过程
    本文描述了mysql-cluster集群sql节点高可用keepalived的故障处理过程,包括故障发生时间、故障描述、故障分析等内容。根据keepalived的日志分析,发现bogus VRRP packet received on eth0 !!!等错误信息,进而导致vip地址失效,使得mysql-cluster的api无法访问。针对这个问题,本文提供了相应的解决方案。 ... [详细]
author-avatar
Jingle丶韩静手_247
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有