mysql搭建以及基本命令

一、mysql搭建过程

ubuntu上安装mysql

1、 sudo apt-get install mysql-server

2、sudo apt-get install mysql-client

3、sudo apt-get install libmysqlclient-dev

二、基本命令-----有关登陆、退出、添加数据库、添加表格、删除数据库、删除表格、显示数据库、显示表格等

1、登陆以及退出

mysql  -h host   -u username  -p password

例子:

mysql -h127.0.0.1  -uroot -p123456

2、退出

quit或者是exit

3、显示当前数据库

show   databases;

4、选择使用某个数据库:

use database_name;

例子:

use test:

5、列出当前数据库所有表格

show tables;

6、创建数据库:

create   databease  database_name;

7、删除某个数据库

drop database  database_name;

8、显示表格数据结构:

describe  table_name;

9、创建表:

使用create table语句创建表:

必须给出以下信息:

新表的名字,在create table之后给出:

表列的名字和定义,用逗号隔开。

实际的表定义(所有列)在圆括号中,各列之间用逗号分开。这个表由9列组成;每列是由列名开始,后跟列的数据类型。

表的主键可以再创建表时用PRIMARY KEY关键字指定。这里,cust_id指定作为主键列。整条语句由右圆括号后的分号结束。

在创建表时,可以指定这一表列是NULL列,或者是NOT NULL列;NULL列就是在插入时不给出该列的值也可以,NOT NULL列就是插入记录时必须给出该列的值。

主键必须唯一。如果使用单列,则它的值必须唯一;如果使用多个列,则这些值的组合值必须唯一。

创建多个列组成的主键时,应该以逗号分隔的列表给出各列名。

AUTO_INCREMENT:就是告诉mysql,本列每增加一行时自动增量,每次执行一个INSERT操作时,mysql自动对该列增量。

默认值,使用default关键字指定。

InnoDB是可靠的事务处理引擎;

MyISAM是性能极高的引擎,作为默认引擎,支持全文本搜索,但不支持事务处理。

三、基本命令----select命令相关

1、基本信息显示:

2、显示表格中的列:

select column_name_list from table_name;

(1) 查询某几列:

select  name,sex,birth,birthaddr from mytable;

(2)查询某一列:

select   name  from  mytable;

(3) 显示某一列,并对这一列进行排序:

select  column_name from table_name   order by  column_name;

例子:

select name from mytable  order by name;

上面默认情况下是升序排序,那么降序排序就是在命令的最后加上desc;

例子 select name from mytable  order by name desc;

(4)只显示某列的某些行:

select  column_name from table_name  LIMIT    line_total;

显示列名为column_name的从第一行开始的共line_total行:

例子:

select   name  from mytable  LIMIT  2;

显示某列,显示这个列的从某行开始的某些行,即设置显示的起始行,设置显示的总行数:

select name from mytable  LIMIT  line_total   OFFSET  line_index;

即从line_index+1行开始显示,共显示line_total行。

上述中可以看出,从从第3行开始。

3、查询所有数据:

select * from mytable;

4、显示特定行:

select  * from  table_name  where  colomn_name="name";

例子:

select  * from   mytable  where  name="Tom";

通过组合条件显示特定行:

select * from table_name where  column_name1="value1" and  column_name2="value2";

例子:

select * from mytable where sex="f" and birthaddr="China";

5、显示排序后的第一个或者最后一个:使用order by 和limit结合使用:

例如:显示年龄最小的人:

select * from mytable order by birth  desc limit 1;

6、结合select和where句子指定的搜索条件进行过滤:

select  column_name_list  from table_name where column_name="value";

例子:

找出名字叫Tom的信息:

select * from mytable where name="Tom";

7、select 语句有一个特殊的where子句,可以用来检查具有NULL的值的列,这个where子句就是is null子句:

select  column_name1 from table_name where column_name2 is null;

例子:

select  birthaddr from mytable where name is null;

8、where子句:

允许多个where子句,这些子句以and子句的方式或者or子句的方式进行:

例如:

挑选name和sex都为NULL的记录:

select * from mytable where name is null and sex is null;

当采用多个and 和 or运算符时,需要使用括号区分真实的逻辑。

四、LIKE操作符

1、百分号(%)通配符

%表示任何字符出现的次数。

例如挑出1987年10月出生的人:

select * from mytable where birth LIKE ‘1987-10%‘;

2、下划线_通配符

匹配单个字符

3、删除左侧多余的空格:

RTrim()

4、删除右侧多余的空格:

LTrim()

5、转换大小写:

例如:select name, upper(name) as name_upper  from mytable order by name;

select name, lower(name) as name_lower from mytable order by name;

五、汇总数据

1、聚集函数

这种类型的检索例子有以下几种:

确定表中行数;

获得表中行组的和;

找出表列的最大值、最小值或者平均值。

例如:

select  count(name) as total from mytable:

六、文本搜索:

1、全文本搜索

使用两个函数match()和against()执行全文本搜索,其中match()指定被搜索的列,against指定要使用的搜索方式:

七、插入数据

1、语法结构:

insert   into    table_name( table info structure)   value( value_list);

例如:

insert  into   mytable( name, sex, birth, birthaddr) value( "Max", "m", "1886-11-06", "German");

2、可以插入多条数据,在同一个语句中:

insert  into mytable( name, birth, sex, birthaddr) value( "Linda", "2001-09-16", "f", "Russia"), ("Green", "1698-12-08", "m", "Italy");

八、更新和删除数据

1、更新数据

更新特定行:使用where作为限定

更新所有行:不使用where

更新语句使用update语句:包含三部分:

要更新的表;

列名和它们的新值;

确定要更新行的过滤条件;

update  表名  set  列名=“名字”   where   过滤条件

例子:

update mytable set  name="tt"  where   birthaddr="America"

2、删除数据

使用delete语句:

从表中删除特定的行:需要加限定条件,即where语句;

从表中删除所有行;

九、更改表结构

使用ALTER  TABLE语句更改表结构:

ALTER TABLE之后必须跟要更改的表名以及所做要更改的列表;

1、增加一个列:

例子:

ALTER  TABLE   mytable    ADD  height   float;

2、删除一个列:

例子:

ALTER TABLE mytable  drop column height;

3、更改表名:

rename   table   旧表名  to 新表名

时间: 2024-10-13 10:15:16

mysql搭建以及基本命令的相关文章

分离php和MySQL搭建LAMP平台

分离php和MySQL搭建LAMP平台 环境: 系统:CentOS-7-x86_64-Minimal-1611 Apache:httpd-2.4.25.tar MySQL:mysql-5.7.16.tar php:php-5.6.30.tar 192.168.57.144:安装MySQL 192.168.57.143:安装Apache+php http://blog.sina.com.cn/s/blog_b6e37c3f0101oo81.html 创建相关目录 创建用户 解压安装包 编译安装 (

NFS实现(双httpd + php-fpm + nfs + mysql 搭建discuz论坛)的方法

NFS相关介绍 一.NFS简介 1. NFS(Network File System):NFS是一个文件共享协议, 也是是在类Unix系统中在内核中实现的文件系统. 2. 起源:最早是由SUN公司研发,非常古老,只是实现文件共享,安全控制方面比较简陋. 版本有, NFSv1, NFSv2,NFSv3,NFSv4. v4版开始支持kerberos 认证. 3. RPC(Remote Procedure Call):NFS协议是基于PRC(远程过程调用)实现的. 基本过程如下图,客户端某程序发起过程

MySQL搭建系列之多实例

所谓多实例,就是在一台服务器上搭建.运行多个MySQL实例,每个实例使用不同的服务端口,通过不同的socket监听:物理上,每个实例拥有独立的参数配置文件及数据库. 通常情况下,一台服务器是不建议运行多个MySQL实例的,尤其是生产环境,因为这会造成资源相互强占问题.但在一些高可用环境中,却有这样的需求,比如:利用Heartbeat搭建的故障转移集群环境,若主备服务器只运行一个MySQL实例,则备用服务器平常处于闲置状态,造成了资源浪费:若各自运行一个MySQL实例,则在一方故障时,要求另一方接

Windows7环境下MyEclipse+Nutch2.2.1+Mysql搭建

一.环境准备 首先肯定是配置开发环境,这里暂时不作详细描述. 需要的环境有jdk1.7,MyEclipse,SVN,ant,以及MyEclipse下的两个插件subclipse 和IvyDe,下载地址http://subclipse.tigris.org/update_1.8.x和http://www.apache.org/dist/ant/ivyde/updatesite. 二.从svn检出项目 接着再Next到下一步 Finish完成导入. 三.  修改ivy目录下的ivysetting.x

编译安装MySQL搭建多实例

上一篇博客介绍的是:通过 MySQL二进制包搭建多实例服务http://aby028.blog.51cto.com/5371905/1891423 现在介绍通过编译安装MySQL搭建多实例 实验中所用到的软件包:http://down.51cto.com/data/2281098 环境介绍 编译安装mysql前需要解决依赖包问题 yum -y install ncurses-devel libaio-devel 安装 lrzsz 这个软件,和系统无关的一个软件.安装后可以通过xshell拖拽软件

jdk+tomcat+mysql搭建网站无法打开

我们webwall的测试网站凌云论坛,是我之前用jdk-6u5-windows-i586-p.exe+apachetomcat6+mysql-essential-5.1.40-win32.msi搭建的,安装过程中都是使用了默认安装地址.现在网站出现了问题,无法打开. 查看tomcat日志: C:\Program Files\Apache SoftwareFoundation\Tomcat 6.0\logs: LifecycleException:  No UserDatabase compone

Fedora mysql搭建

yum install mysql yum install mysql-server yum install mysql-devel chgrp -R mysql /var/lib/mysql chmod -R 770 /var/lib/mysql service mysqld start 修改root的密码 mysqladmin -u root password 'newpassword' 更改密码 mysql -u root -p   登录数据库 mysql> DROP DATABASE t

一步一步教你用PHP+MySql搭建网站 No.0 准备工作

新开一个系列教程吧,这次是讲如何用PHP+MySQL搭建网站. 之前一直有想过搭建自己的个人网站,然后上周通过阿里云申请的域名和空间都通过审核了,于是就开始研究如何用PHP+MYSQL搭建网站,研究了差不多两周,总算搞定了一个小型的blog类的网站.当然,整个过程是通过学习<PHP and MySQL web development>下来的,这篇教程中的例子是在原书中的Chapter 28: Building a Content Manager System章节的基础上,修改完成的.所有的源代

使用nodejs+express+socketio+mysql搭建聊天室

使用nodejs+express+socketio+mysql搭建聊天室 nodejs相关的资料已经很多了,我也是学习中吧,于是把socket的教程看了下,学着做了个聊天室,然后加入简单的操作mysql数据库存聊天记录.express主要是做了路由及jade模板.我是用的国外的免费空间托管的,国内各种备案,它的访问地址是:nodejs聊天室http://chat.lovewebgames.com/,效果图如下: 用到的插件如下: "socket.io":"~1.3.5&quo