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、建表
<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>+</span><span>--</span><span>----------------+</span> <span>|</span> Tables_in_userdb <span>|</span> <span>+</span><span>--</span><span>----------------+</span> <span>|</span> name <span>|</span> <span>+</span><span>--</span><span>----------------+</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>+</span><span>--</span><span>--------+---------+------+-----+---------+----------------+</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>+</span><span>--</span><span>--------+---------+------+-----+---------+----------------+</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>+</span><span>--</span><span>--------+---------+------+-----+---------+----------------+</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>
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;

linux设备节点是应用程序和设备驱动程序沟通的一个桥梁;设备节点被创建在“/dev”,是连接内核与用户层的枢纽,相当于硬盘的inode一样的东西,记录了硬件设备的位置和信息。设备节点使用户可以与内核进行硬件的沟通,读写设备以及其他的操作。

区别:1、open是UNIX系统调用函数,而fopen是ANSIC标准中的C语言库函数;2、open的移植性没fopen好;3、fopen只能操纵普通正规文件,而open可以操作普通文件、网络套接字等;4、open无缓冲,fopen有缓冲。

端口映射又称端口转发,是指将外部主机的IP地址的端口映射到Intranet中的一台计算机,当用户访问外网IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上;可以通过使用动态或固定的公共网络IP路由ADSL宽带路由器来实现。

在linux中,交叉编译是指在一个平台上生成另一个平台上的可执行代码,即编译源代码的平台和执行源代码编译后程序的平台是两个不同的平台。使用交叉编译的原因:1、目标系统没有能力在其上进行本地编译;2、有能力进行源代码编译的平台与目标平台不同。

在linux中,eof是自定义终止符,是“END Of File”的缩写;因为是自定义的终止符,所以eof就不是固定的,可以随意的设置别名,linux中按“ctrl+d”就代表eof,eof一般会配合cat命令用于多行文本输出,指文件末尾。

在linux中,可以利用“rpm -qa pcre”命令判断pcre是否安装;rpm命令专门用于管理各项套件,使用该命令后,若结果中出现pcre的版本信息,则表示pcre已经安装,若没有出现版本信息,则表示没有安装pcre。

linux查询mac地址的方法:1、打开系统,在桌面中点击鼠标右键,选择“打开终端”;2、在终端中,执行“ifconfig”命令,查看输出结果,在输出信息第四行中紧跟“ether”单词后的字符串就是mac地址。

在linux中,rpc是远程过程调用的意思,是Reomote Procedure Call的缩写,特指一种隐藏了过程调用时实际通信细节的IPC方法;linux中通过RPC可以充分利用非共享内存的多处理器环境,提高系统资源的利用率。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Dreamweaver CS6
视觉化网页开发工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),