当前位置: 首页 > 科技观察

数据库运维技巧:MySQL常用命令详解

时间:2023-03-18 00:15:23 科技观察

本文主要介绍MySQL常用命令合集,堪称初学者需要掌握的MySQL命令全集。系统命令行环境以类Unix系统为例。需要的朋友可以参考一下。mysql常用命令(必备)1、导出test_db数据库命令:mysqldump-u用户名-p数据库名>导出文件名mysqldump-uroot-ptest_db>test_db.sql1.1)导出所有数据库mysqldump-uroot-p–all-databases>mysql_all.sql2。导出表命令:mysqldump-u用户名-p数据库名表名>导出文件名mysqldump-uroot-ptest_dbtest1>test_test1.sql3。导出一个数据库结构mysqldump-uroot-p-d--add-drop-tabletest_db>test.sql-dnodata--add-drop-table在每个create语句前添加一个droptable4.导入数据库①commonsource命令进入mysql数据库控制台,如mysql-uroot-p然后使用source命令,后面的参数是脚本文件(如这里使用的.sql)mysql>sourcewcnc_db.sql②使用mysqldump命令mysqldump-uusername-pdbname<文件名.sql③使用mysql命令mysql-uusername-p-Ddbname例如:创建一个名为test_db的数据库mysql>createdatabasetest_db;2)、显示所有数据库命令:showdatabases(注意:***有个s)mysql>showdatabases;3)、删除数据库命令:dropdatabase<数据库名>例如:删除名为test_db的数据库mysql>dropdatabasetest_db;4)、连接数据库命令:use<数据库名>例如:进入test_db数据库mysql>usetest_db;屏幕提示:Databasechanged5),查看当前使用的数据库mysql>selectdatabase();6)、当前数据库包含的表信息mysql>showtables;(注:***有个s)7)、检查数据库字符集mysql>showvariableslike'%char%';7.表操作1)、操作前先连接数据库建表命令:createtable<表名>(<字段名1><类型1>[,..<字段名n><类型n>]);例如:创建表test01,并创建两个字段,id,name,datalength(字符用于定义长度单位)mysql>createtabletest01(idvarchar(20),namevarchar(20));2),查看表结构命令:desc表名,或showcolumnsfromtablename例如:查看测试表结构mysql>desctest;mysql>showcolumnsfromtest;mysql>describetest;mysql>showcreatetabletest;3)、删除表命令:droptable例如:删除名为test_db的表表mysql>droptabletest_db;4)、插入数据命令:insertinto<表名>[(<字段名1>[,..<字段名n>])]values(值1)[,(值n)]例如:Insert向表test中插入两条记录,这两条记录表示:编号为001,名称为yangxzmysql>insertintotestvalues("001","yangxz");5)、查询表中数据(1)查询所有行命令:selectfrom<表名>where<表达式>例如:查看表test中的所有内容(数据)mysql>select*fromtest;例如:在test表中查找id=001的内容mysql>select*fromtestwhereid=001;例如:在test表中查找id以0开头的内容mysql>select*fromtestwhereidlike"0%";(2)查询前几行数据例如:查看表test的前2行数据mysql>select*fromtestorderbyidlimit0,2;或者:mysql>select*fromtestlimit0,2;6),删除表中的数据命令:deletefromtablenamewhereexpression例如:删除表test中编号为001的记录mysql>deletefromtestwhereid=001;7),修改表中数据命令:update表名setfield=newvalue,...whereconditions例如:修改test表中name字段的内容mysql>updatetestsetname='admin'whereid=002;例如:修改test表中name字段的长度mysql>altertabletestmodifycolumnnamevarchar(30);8)、在表中添加字段的命令:altertable表名addfieldtypeother;例如:在表test中添加一个字段passtest,类型为int(4),默认值为0mysql>altertabletestaddpasstestint(4)default'0';9),更改表名:命令:renametable原表名到新表名;例如:将表test改名为test1mysql>renametabletesttotest1;8。更改密码mysqladmin-uroot-p旧密码密码新密码mysql>usemysql;mysql>updatemysql.usersetpassword='新密码'whereuser='用户名';mysql>flushprivileges;mysql>setpasswordforusername@localhost=password('你的密码');mysql>flushprivileges;9.添加用户例如:添加一个测试用户,密码为1234mysql>insertintomysql.user(Host,User,Password)values("localhost","test",password("1234"));mysql>flushprivileges;10.删除用户例如:删除测试用户mysql>deletefromuserwhereuser='test'andhost='localhost';mysql>flushprivileges;11.数据库授权命令:将数据库名称的权限。*授予由'密码'标识的用户名@localhost;例如:授权test用户拥有test_db库grantallontest_db.*totest@localhostidentifiedby'123456'的所有权限;例如:授权test用户拥有test_db库select,更新权限grantselect,updateontest_db.*totest@localhost;12.锁表mysql>flushtableswithreadlock;解锁:mysql>解锁表;13、查看当前用户mysql>selectuser();14、MYSQL密码破解方法先停止Mysql服务以跳过权限模式启动,命令如下:servicemysqldstop/usr/local/mysql/bin/mysqld_safe–user=mysql–skip-grant-tables&在shell中输入mysqlterminal回车进入mysql命令行由于MYSQL用户密码认证信息保存在mysql库中的user表中,需要进入mysql库mysql>usemysql;mysql>updateusersetpassword=password('123456')whereuser='root';mysql>flushprivileges;修改MYSQLroot密码后,需要停止用Mysql跳过权限表的启动过程,然后正常启动MYSQL,用新密码登录再次进入Mysql数据库15.查看Mysql提供的存储引擎mysql>showengines;查看默认存储引擎mysql>showvariableslike'%storage_engine%';查看mysql系统版本mysql>selectversion();查看mysql库中的所有表mysql>showtablesfrommysql;查看Mysql端口mysql>showvariableslike'port';查看mysql库的user表中的用户和主机信息mysql>selectuser,hostfrommysql.user;