0

0

linux 下mysql一些基本操作

php中文网

php中文网

发布时间:2016-06-07 15:39:59

|

1146人浏览过

|

来源于php中文网

原创

MySQL数据库常用操作 1、显示数据库 show databases; 2、选择数据库 use 数据库名; 3、显示数据库中的表 show tables; 4、显示数据表的结构 describe 表名; 5、显示表中记录 SELECT * FROM 表名 6、建库 create database 库名; 7、建表 create table 表名 (

mysql数据库常用操作

1、显示数据库

<span> show databases;</span>

2、选择数据库

<span><span>use</span> 数据库名;</span>

3、显示数据库中的表

<span>show tables;</span>

4、显示数据表的结构
 

<span>describe 表名;</span>

 

5、显示表中记录
 

<span><span>SELECT</span> <span>*</span> <span>FROM</span> 表名</span>

 


6、建库

<span> <span>create</span> database 库名;</span>

 

7、建表
 

linux   下mysql一些基本操作

<span><span>create</span> <span>table</span><span> 表名 (字段设定列表);

mysql</span><span>></span> <span>create</span> <span>table</span><span> name(
    </span><span>-></span> id <span>int</span> auto_increment <span>not</span> <span>null</span> <span>primary</span> <span>key</span><span> ,
    </span><span>-></span> uname <span>char</span>(<span>8</span><span>),
    </span><span>-></span> gender <span>char</span>(<span>2</span><span>),
    </span><span>-></span><span> birthday date );
Query OK, </span><span>0</span> rows affected (<span>0.03</span><span> sec)

mysql</span><span>></span><span> show tables;
</span><span>&#43;</span><span>--</span><span>----------------&#43;</span>
<span>|</span> Tables_in_userdb <span>|</span>
<span>&#43;</span><span>--</span><span>----------------&#43;</span>
<span>|</span> name             <span>|</span>
<span>&#43;</span><span>--</span><span>----------------&#43;</span>
<span>1</span> row <span>in</span> <span>set</span> (<span>0.00</span><span> sec)

mysql</span><span>></span><span> describe name;
</span><span>&#43;</span><span>--</span><span>--------&#43;---------&#43;------&#43;-----&#43;---------&#43;----------------&#43;</span>
<span>|</span> Field    <span>|</span> Type    <span>|</span> <span>Null</span> <span>|</span> <span>Key</span> <span>|</span> <span>Default</span> <span>|</span> Extra          <span>|</span>
<span>&#43;</span><span>--</span><span>--------&#43;---------&#43;------&#43;-----&#43;---------&#43;----------------&#43;</span>
<span>|</span> id       <span>|</span> <span>int</span>(<span>11</span>) <span>|</span> NO   <span>|</span> PRI <span>|</span> <span>NULL</span>    <span>|</span> auto_increment <span>|</span>
<span>|</span> uname    <span>|</span> <span>char</span>(<span>8</span>) <span>|</span> YES  <span>|</span>     <span>|</span> <span>NULL</span>    <span>|</span>                <span>|</span>
<span>|</span> gender   <span>|</span> <span>char</span>(<span>2</span>) <span>|</span> YES  <span>|</span>     <span>|</span> <span>NULL</span>    <span>|</span>                <span>|</span>
<span>|</span> birthday <span>|</span> date    <span>|</span> YES  <span>|</span>     <span>|</span> <span>NULL</span>    <span>|</span>                <span>|</span>
<span>&#43;</span><span>--</span><span>--------&#43;---------&#43;------&#43;-----&#43;---------&#43;----------------&#43;</span>
<span>4</span> rows <span>in</span> <span>set</span> (<span>0.00</span><span> sec)

注: auto_increment 自增
     </span><span>primary</span> <span>key</span>    主键</span>

linux   下mysql一些基本操作

 


8、增加记录

<span> <span>insert</span> <span>into</span> name(uname,gender,birthday) <span>values</span>(<span>'</span><span>张三</span><span>'</span>,<span>'</span><span>男</span><span>'</span>,<span>'</span><span>1971-10-01</span><span>'</span>);</span>

 

9、修改记录
 

<span><span>update</span> name <span>set</span> birthday<span>=</span><span>'</span><span>1971-01-10</span><span>'</span> <span>where</span> uname<span>=</span><span>'</span><span>张三</span><span>'</span>;</span>

 

10、删除记录
 

<span><span>delete</span> <span>from</span> name <span>where</span> uname<span>=</span><span>'</span><span>张三</span><span>'</span>;</span>

 

11、删除表
 

<span><span>drop</span> <span>table</span> 表名</span>

 

12、删除库

<span> <span>drop</span> <span>database</span> 库名;</span>

 

13、备份数据库
 

<span>mysqldump <span>-</span>u root <span>-</span>p <span>--</span><span>opt 数据库名>备份名; //进入到库目录</span></span>

 

14、恢复
 

<span>mysql <span>-</span>u root <span>-</span>p 数据库名<span><</span>备份名; <span>//</span>恢复时数据库必须存在,可以为空数据库</span>

 

15、数据库授权

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

例1、增加一个用户user001密码为123456,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:

<span> mysql<span>></span> <span>grant</span> <span>select</span>,<span>insert</span>,<span>update</span>,<span>delete</span> <span>on</span> <span>*</span>.<span>*</span> <span>to</span> user001@"<span>%</span>" Identified <span>by</span> "<span>123456</span>";</span>

 

例2、增加一个用户user002密码为123456,让此用户只可以在localhost上登录,也可以设置指定IP,并可以对数据库test进行查询、插入、修改、删除的操作 (localhost指本地主机,即MySQL数据库所在的那台主机)

        //这样用户即使用知道user_2的密码,他也无法从网上直接访问数据库,只能通过MYSQL主机来操作test库。
        //首先用以root用户连入MySQL,然后键入以下命令:

<span>  mysql<span>></span><span>grant</span> <span>select</span>,<span>insert</span>,<span>update</span>,<span>delete</span> <span>on</span> test.<span>*</span> <span>to</span> user002<span>@localhost</span> identified <span>by</span> "<span>123456</span>";</span>

 

注: 其次也可以采用修改表的方式,处理用户的登录方式:

数据库: Mysql
表:      User

修改:   User表中的Host列的值来现实登录入口



16、linux下mysql.h:没有那个文件或目录

缺少libmysqlclient-dev,OK安装就是了,apt-get installlibmysqlclient-dev

 

17、linux下如何卸载mysql

首先使用命令rpm -qa | grep -i mysql  会出来mysql的安装版本

假如出现的版本是MySQL-server-community-5.0.90-0.rhel4

下一步使用命令rpm -e MySQL-server-community-5.0.90-0.rhel4

如果什么都不出现,表明已经卸载成功。

在执行后要是提示:error: Failed dependencies:
libmysqlclient.so.15 is needed by (installed) amarok-1.4.8-1.fc7.i386
libmysqlclient.so.15(libmysqlclient_15) is needed by (installed) amarok-1.4.8-1.fc7.i386

那么说明其中有些是dependence关系。那么,我们将它们干脆一次性干掉。

执行完整卸载命令:rpm -e amarok-1.4.8-1.fc7.i386 mysql-libs-5.0.45-6.fc7


 18、linux下查看mysql字符集

阿里妈妈·创意中心
阿里妈妈·创意中心

阿里妈妈营销创意中心

下载

show variables like 'character_set_%';

 

19、使用C语言访问MYSQL数据

连接例程
用C语言连接MYSQL数据库包含两个步骤:
(1)初始化一个连接句柄结构
(2)实际进行连接
首先使用mysql_init来初始化连接句柄
#include
MYSQL *mysql_init(MYSQL *);
通常你把NULL给这个例程,它会返回一个指向新分配的连接句柄结构的指针。如果你传递一个
已有的结构,它将被重新初始化。这个例程在出错时返回NULL。
目前为止,你只是分配和初始化了一个结构。你仍然需要使用mysql_real_connect来向一个
连接提供参数:

MYSQL *mysql_real_connect(MYSQL *connection,

const char *server_host,

const char *sql_user_name,

const char *sq_password,

const char *db_name,

unsigned int port_number,

const char *unix_socket_name,

unsigned int flags);

指针connecton必须指向已经被mysql_init初始化过的结构。

server_host既可以是主机名,也可以是IP地址。

sql_username和sql_password的含义和它们的字面含义一样,如果登录名为NULL,则假设登录名为当前linux用户的登录ID,如果密码为NULL,你将只能访问服务器上无需密码就可访问的数据,密码会在通过网络传输前进行加密。

port_number和unix_socket_name应该分别为0和NULL,除非你改变了MYSQL安装的默认配置。

如果无法连接,将返回NULL。mysql_error函数可以提供有帮助的信息。

使用完连接后,通常在程序退出时,调用mysql_close:

void mysql_close(MYSQL *connection);

这将关闭连接,如果连接是由mysql_init建立的,MYSQL结构会被释放,指针将会失效并无法再次使用。

 

在C应用程序中提取数据一般需要下面4个步骤:

(1)执行查询

(2)提取数据

(3)处理数据

(4)必要的清理工作

你将使用mysql_query来发送SQL语句,然后使用mysql_store_result或mysql_use_result来提取数据,然后使用mysql_fetch_row来处理数据,最后使用mysql_free_result来释放查询占用的内存资源。

 

 

19、mysql创建用户

我们可以针对不同的机器来创建用户,并给他们分配不同的连接权限,特别的,出于安全考虑,我们只允许root用户通过本地机器连接。

我们将创建一个拥有相当广泛权限的新用户rick,rick能使用3种不同的方法进行连接:

(1)从本地机器连接。

(2)从IP地址192.168.0.0~192.168.0.255范围内的任何机器连接

(3)从wiley.com域中任何机器连接。

最安全最简单的方法是创建3个用户,他们分别从3个不同的地点进行连接。如果愿意,我们甚至可以根据他们从何处连接给他们设置3个不同的密码。

以root身份连接到MYSQL,然后依次执行如下操作:

(1)为rick创建一个本地登录:

mysql> grant all on *.* to rick@localhost identified by 'secretpassword';

(2)然后创建一个来自C类子网192.168.0的登录。注意我们必须用单引号来保护IP范围,并使用掩码/255.255.255.0来确定允许的IP范围:

mysql>grant all on *.* to rick@'192.168.0.0/255.255.255.0' identified by 'secretpassword';

(3)最后创建一个登录,让rick能从wiley.com域中的任何机器登录

mysql> grant all on *.* to rick@'%.wiley.com' identified by 'secretpassword';

(4)现在我们再次查看user表来核对条目:

mysql>select user,host,password from mysql.user;

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

49

2026.03.13

Python异步编程与Asyncio高并发应用实践
Python异步编程与Asyncio高并发应用实践

本专题围绕 Python 异步编程模型展开,深入讲解 Asyncio 框架的核心原理与应用实践。内容包括事件循环机制、协程任务调度、异步 IO 处理以及并发任务管理策略。通过构建高并发网络请求与异步数据处理案例,帮助开发者掌握 Python 在高并发场景中的高效开发方法,并提升系统资源利用率与整体运行性能。

89

2026.03.12

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

276

2026.03.11

Go高并发任务调度与Goroutine池化实践
Go高并发任务调度与Goroutine池化实践

本专题围绕 Go 语言在高并发任务处理场景中的实践展开,系统讲解 Goroutine 调度模型、Channel 通信机制以及并发控制策略。内容包括任务队列设计、Goroutine 池化管理、资源限制控制以及并发任务的性能优化方法。通过实际案例演示,帮助开发者构建稳定高效的 Go 并发任务处理系统,提高系统在高负载环境下的处理能力与稳定性。

59

2026.03.10

Kotlin Android模块化架构与组件化开发实践
Kotlin Android模块化架构与组件化开发实践

本专题围绕 Kotlin 在 Android 应用开发中的架构实践展开,重点讲解模块化设计与组件化开发的实现思路。内容包括项目模块拆分策略、公共组件封装、依赖管理优化、路由通信机制以及大型项目的工程化管理方法。通过真实项目案例分析,帮助开发者构建结构清晰、易扩展且维护成本低的 Android 应用架构体系,提升团队协作效率与项目迭代速度。

99

2026.03.09

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

105

2026.03.06

Rust内存安全机制与所有权模型深度实践
Rust内存安全机制与所有权模型深度实践

本专题围绕 Rust 语言核心特性展开,深入讲解所有权机制、借用规则、生命周期管理以及智能指针等关键概念。通过系统级开发案例,分析内存安全保障原理与零成本抽象优势,并结合并发场景讲解 Send 与 Sync 特性实现机制。帮助开发者真正理解 Rust 的设计哲学,掌握在高性能与安全性并重场景中的工程实践能力。

230

2026.03.05

PHP高性能API设计与Laravel服务架构实践
PHP高性能API设计与Laravel服务架构实践

本专题围绕 PHP 在现代 Web 后端开发中的高性能实践展开,重点讲解基于 Laravel 框架构建可扩展 API 服务的核心方法。内容涵盖路由与中间件机制、服务容器与依赖注入、接口版本管理、缓存策略设计以及队列异步处理方案。同时结合高并发场景,深入分析性能瓶颈定位与优化思路,帮助开发者构建稳定、高效、易维护的 PHP 后端服务体系。

619

2026.03.04

AI安装教程大全
AI安装教程大全

2026最全AI工具安装教程专题:包含各版本AI绘图、AI视频、智能办公软件的本地化部署手册。全篇零基础友好,附带最新模型下载地址、一键安装脚本及常见报错修复方案。每日更新,收藏这一篇就够了,让AI安装不再报错!

173

2026.03.04

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10.7万人学习

Git 教程
Git 教程

共21课时 | 4.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号