MYSQL 常用命令收集
mysql数据库常用语句大全
![mysql数据库常用语句大全](https://img.taocdn.com/s3/m/3efb51aa1711cc7930b716c5.png)
mysql数据库常用语句SQL分类:DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)首先,简要介绍基础语句:1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建备份数据的deviceUSE masterEXEC sp_addumpdevice ’disk’, ’testBack’, ’c:mssql7backupMyNwind_1.dat’--- 开始备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)根据已有的表创建新表:A:create table tab_new like tab_old (使用旧表创建新表)B:create table tab_new as select col1,col2… from tab_old definition only5、说明:删除新表:drop table tabname6、说明:增加一个列:Alter table tabname add column col type注:列增加后将不能删除。
DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar 类型的长度。
7、说明:添加主键:Alter table tabname add primary key(col)说明:删除主键:Alter table tabname drop primary key(col)8、说明:创建索引:create [unique] index idxname on tabname(col….)删除索引:drop index idxname注:索引是不可更改的,想更改必须删除重新建。
mysql查表语句
![mysql查表语句](https://img.taocdn.com/s3/m/0584c959974bcf84b9d528ea81c758f5f71f295b.png)
mysql查表语句MySQL是一种关系型数据库管理系统,它使用结构化查询语言(Structured Query Language,简称SQL)进行数据的增、删、改、查操作。
在MySQL中,要查询表(Table)中的数据,我们可以使用SELECT语句。
SELECT语句是MySQL中最常用的语句之一,用于从表中检索数据。
下面是一些常见的SELECT语句的用法:1. 查询所有数据:```sqlSELECT * FROM 表名;```使用SELECT *语句可以检索表中的所有数据。
2. 查询指定字段数据:```sqlSELECT 字段1, 字段2, ... FROM 表名;```使用SELECT语句可以指定需要查询的字段,通过逗号分隔。
这样可以仅检索需要的字段数据,减少数据传输量。
3. 查询带条件的数据:```sqlSELECT * FROM 表名 WHERE 条件;```使用WHERE子句可以通过指定条件来筛选数据。
条件可以使用比较运算符(如=、>、<等)、逻辑运算符(如AND、OR等)进行组合,以满足特定的查询需求。
4. 对查询结果进行排序:```sqlSELECT * FROM 表名 ORDER BY 字段 ASC/DESC;```使用ORDER BY子句可以对查询结果进行排序。
ASC表示升序排列,DESC表示降序排列。
5. 分页查询数据:```sqlSELECT * FROM 表名 LIMIT 开始位置, 查询数量;```使用LIMIT子句可以限制查询结果的返回数量。
通过指定开始位置和查询数量,可以实现分页查询的效果。
6. 多表联合查询:```sqlSELECT * FROM 表名1 INNER JOIN 表名2 ON 表名1.字段 = 表名2.字段;```使用INNER JOIN子句可以实现多表联合查询。
通过指定两个表之间的关联字段,可以将满足关联条件的结果进行连接查询。
以上是一些常见的MySQL查询语句的用法,可以根据实际需求进行灵活的组合和运用。
数据库命令语句
![数据库命令语句](https://img.taocdn.com/s3/m/d13e0326cd7931b765ce0508763231126edb772f.png)
数据库命令语句
1. CREATE DATABASE - 创建新数据库
2. CREATE TABLE - 创建新表
3. SELECT - 从表中选取数据
4. INSERT INTO - 向表中插入新数据
5. UPDATE - 更新表中数据
6. DELETE - 从表中删除数据
7. ALTER TABLE - 修改表的结构
8. DROP TABLE - 删除表
9. INDEX - 创建索引
10. JOIN - 在多个表之间进行关联
11. GROUP BY - 按照指定的列进行分组
12. ORDER BY - 对结果集按照指定列进行排序
13. UNION - 把两个或多个SELECT 语句的结果合并起来
14. TRUNCATE TABLE - 删除表中的所有数据,但不删除表定义
15. COMMIT - 事务提交
16. ROLLBACK - 事务回滚
17. GRANT - 赋予用户访问权限
18. REVOKE - 撤销用户访问权限
19. CREATE VIEW - 创建视图
20. ALTER VIEW - 修改视图。
mysql命令参数
![mysql命令参数](https://img.taocdn.com/s3/m/2e86721f4a73f242336c1eb91a37f111f0850d63.png)
mysql命令参数MySQL命令参数详解MySQL作为一种流行的关系型数据库管理系统,其常用的命令参数也是必须掌握的技能之一。
在本文中,我们将详细介绍MySQL的常用命令参数,包括参数的含义、用法以及实际应用场景。
1. -h, --host该参数用于指定MySQL服务器的主机名或IP地址。
例如,可以使用以下命令连接到MySQL服务器:mysql -h localhost -u username -p password其中,localhost表示本地主机,username表示用户名,password表示密码。
2. -P, --port该参数用于指定MySQL服务器的端口号。
默认情况下,MySQL服务器的端口号为3306。
例如,可以使用以下命令连接到MySQL服务器:mysql -h localhost -P 3306 -u username -p password其中,3306表示MySQL服务器的端口号。
3. -u, --user该参数用于指定MySQL服务器的用户名。
例如,可以使用以下命令连接到MySQL服务器:mysql -h localhost -u username -p password其中,username表示MySQL服务器的用户名。
4. -p, --password该参数用于指定MySQL服务器的密码。
例如,可以使用以下命令连接到MySQL服务器:mysql -h localhost -u username -p password其中,password表示MySQL服务器的密码。
5. -D, --database该参数用于指定要连接的MySQL数据库名称。
例如,可以使用以下命令连接到MySQL服务器:mysql -h localhost -u username -p password -D dbname其中,dbname表示要连接的MySQL数据库名称。
6. -e, --execute该参数用于指定要在MySQL服务器上执行的SQL语句。
MYSQL数据库命令大全
![MYSQL数据库命令大全](https://img.taocdn.com/s3/m/267b59966bec0975f465e238.png)
MYSQL命令大全常见的MySQL命令大全一、连接MySQL格式:mysql -h主机地址-u用户名-p用户密码1、例1:连接到本机上的MYSQL。
首先在打开DOS窗口,然后进入目录mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>。
2、例2:连接到远程主机上的MYSQL。
假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。
则键入以下命令:mysql -h110.110.110.110 -uroot -pabcd123(注:u与root可以不用加空格,其它也一样)3、退出MYSQL命令:exit (回车)。
二、修改密码格式:mysqladmin -u用户名-p旧密码password 新密码1、例1:给root加个密码ab12。
首先在DOS下进入目录mysqlbin,然后键入以下命令:mysqladmin -uroot -password ab12注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
2、例2:再将root的密码改为djg345。
mysqladmin -uroot -pab12 password djg345三、增加新用户。
(注意:和上面不同,下面的因为是MySQL环境中的命令,所以后面都带一个分号作为命令结束符)格式:grant select on 数据库.* to 用户名@登录主机identified by \"密码\"例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。
首先用以root用户连入MySQL,然后键入以下命令:grant select,insert,update,delete on *.* to test2@localhost identified by \"abc\";如果你不想test2有密码,可以再打一个命令将密码消掉。
mysql客户端常用命令
![mysql客户端常用命令](https://img.taocdn.com/s3/m/3258bd27657d27284b73f242336c1eb91a3733b0.png)
mysql客户端常⽤命令⼀mysqldump这个命令是逻辑导出,导出的内容⽅便查看和编辑,如果要备份⼤量数据,最好选择物理导出命令mysqldump的命令⾏参数也可以在配置⽂件的[mysqldump][client]组使⽤,和mysql命令⾏参数⼀样的就不列举了mysqldump -u username -p dbname table1 table2 ...-> BackupName.sqldbname参数表⽰数据库的名称;table1和table2参数表⽰需要备份的表的名称,为空则整个数据库备份;BackupName.sql参数表设计备份⽂件的名称,⽂件名前⾯可以加上⼀个绝对路径。
通常将数据库备份成⼀个后缀名为sql的⽂件;mysqldump -u username -p --databases dbname2 dbname2 > Backup.sql加上了--databases选项,然后后⾯跟多个数据库mysqldump -u username -p -all-databases > BackupName.sql备份所有数据库mysqldump -u ⽤户名 -p -d –add-drop-table 数据库名 > 导出的⽂件名备份创建表语句包含删表语句mysqldump -u username -p dbname < filename.sql//导⼊数据库--add-drop-database //添加删除数据库语句在创建数据库之前--add-drop-table--add-drop-trigger-n // 不导出创建数据库语句--no-create-db-t // 不导出创建表语句--no-create-info--replace //⽤replace语句替换insert语句--allow-keywords //在列名前添加表名,作为关键字-i //添加版本等信息--comments,--skip-comments--dump-date //包含⽇期 --skip-dump-date--log-error //记录警告和错误到指定⽂件--set-charset //输出设置字符集语句 --skip-set-charset,--no-set-names -N--compact //产⽣更紧凑的输出--skip-compact--compatible //产⽣的输出尽可能兼容其它数据库服务器-c //insert语句包含列名 --complete-insert--create-options //包含所有创建表选项--hex-blob //⽤16进制输出⼆进制列数据-Q //数据库,表,列名⽤单引号或双引号括起来 --quote-names-r //输出到指定的⽂件 --result-file-T //输出数据到tab分割的⽂本格式txt⽂件--tab--tz-utc //即使两个服务器在不同的时区,TIMESTAMP列的值也不会有问题--skip-tz-utc-A //导出所有数据库--all-databases-B //导出⼏个数据库--databases-E //导出定时事件--event导出时不包含创建和修改的时间,所以恢复时创建时间就是恢复的时间,可以到处mysql.event表包含所有信息--ignore-error //忽略指定的错误--ignore-table //不导出指定的表-d //不导出表数据,只导出表结构–-no-data-R //导出存储过程和⾃定义函数–-routines导出时不包含创建和修改的时间,所以恢复时创建时间就是恢复的时间,可以到处mysql.proc表包含所有信息--tables //导出的表名--triggers //导出的触发器名字-w //导出时的where条件 --where--add-locks //导出的表保护lock tables和unlock tables语句-F //开始导出前刷新服务器⽇志⽂件--flush-logs-x //导出前锁所有表--lock-all-tables-l //导出前锁表 --lock-tables --skip-lock-tables--no-autocommit //是否包含SET autocommit = 0 和 COMMIT--order-by-primary //导出时是否按主键排序--single-transaction //导出前发送START TRANSACTION语句到服务器,设置数据库事务级别是REPEATABLE READ-q //⼀次从服务器检索⼀⾏数据--quick--opt //使导出更快--skip-opt-K //数据插⼊后再创建索引--disable-keys-e //⽤多⾏语法写insert语句--extended-insert--insert-ignore //⽤insert ignore语句替换insert语句⼆mysqlmysql命令⾏参数,也可以在配置⽂件的[client][mysql]组使⽤。
mysql数据库常用语句大全
![mysql数据库常用语句大全](https://img.taocdn.com/s3/m/dd60b2bcf605cc1755270722192e453610665ba5.png)
mysql数据库常用语句大全1.连接数据库:连接本地数据库:mysql -u root -p连接远程数据库:mysql -h 192.169.22.199 -u root -p退出数据库:exit2.创建数据库:create database payment;使用 mysqladmin 创建数据库mysqladmin -u root -p create abc_db; 3.显示所有数据库:show databases;4.删除数据库:drop database payment;使用 mysqladmin 删除数据库mysqladmin -u root -p drop abc_db5.选择数据库:use home_db;6.数据类型:数值类型:TINYINT:SMALLINT:MEDIUMINT:INT(INTEGER):BIGINT:FLOAT:DOUBLE:DECIMAL:日期和时间类型:DATE:TIEM:DATETIME:YEAR:TIMESTAMP:字符串类型:CHAR:VARCHAR:TINYBLOB:TINYTEXT:BLOB:TEXT:MEDIUMBLOB:MEDIUMTEXT:LONGBLOB:LONGTEXT:7.创建数据表:CREATE TABLE IF NOT EXISTS `t_order`( `id` INT(10) UNSIGNED AUTO_INCREMENT,`title` VARCHAR(100) NOT NULL,PRIMARY KEY(`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;8.删除数据表:DROP TABLE t_order;9.insert 插入:插入一条数据:INSERT INTO t_order(title)VALUES('手机');INSERT 插入多条数据:INSERT INTO t_order(title)VALUES('笔记本'),('平板电脑');10.select 查询:所有字段查询:SELECT * FROM t_order;某些字段查询:SELECT t_order.id, t_order.title FROM t_order;分页查询:SELECT t_order.title FROM t_order WHERE id LIMIT 1,10 11.where 条件:OR,AND的应用:SELECT * FROM t_order WHERE title ='手机' OR title='笔记本';SELECT * FROM t_order WHERE title ='手机' AND id=2;12.update 更新:UPDATE t_order SET title='苹果手机' WHERE id =2;13.delete 删除:DELETE FROM t_order WHERE id=2;14.like 查询SELECT * FROM t_order WHERE title LIKE '%手机%';SELECT * FROM t_order WHERE title LIKE '_机';14.union 联合查询:连接两个以上的 SELECT 语句合并成一个结果集合SELECT * FROM t_order UNION SELECT * FROM t_user; SELECT * FROM t_order UNION ALL SELECT * FROM t_user;15.order by 排序:升序排序:SELECT * FROM t_order ORDER BY id ASC;降序排序:SELECT * FROM t_order ORDER BY id DESC;16.group by 分组:SELECT title, count(*) as total FROM t_order GROUP BY title;17.join 连接:inner join(内连接) on:获取两个表中字段匹配关系的记录SELECT * FROM t_order o INNER JOIN t_user u ON o.id =u.id;left join(左连接)on:获取左表所有记录,即使右表没有对应匹配的记录SELECT * FROM t_order o LEFT JOIN t_user u ON o.id =u.id;right join(右连接)on:获取右表所有记录,即使左表没有对应匹配的记录SELECT * FROM t_order o RIGHT JOIN t_user u ON o.id =u.id;18.null的处理:null值的判断:SELECT * FROM t_user WHERE name IS NULL;非null值的判断:SELECT * FROM t_user WHERE name IS NOT NULL;19.REGEXP 正则表达式:SELECT * FROM t_order WHERE title REGEXP('手机$'); SELECT * FROM t_order WHERE title REGEXP('^笔');。
Mysql常用命令行大全
![Mysql常用命令行大全](https://img.taocdn.com/s3/m/4a81bb115f0e7cd184253692.png)
use mysql;
delete from User where User="";
update User set Password=PASSWORD(newpassword) where User=root;
(注:u与root可以不用加空格,其它也一样)
3、退出MYSQL命令: exit (回车)
=====================================================================
1:使用SHOW语句找出在服务器上当前存在什么数据库:
mysql> SHOW DATABASES;
5:创建一个数据库表
mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:显示表的结构:
mysql> DESCRIBE MYTABLE;
7:往表中加入记录
mysql> insert into MYTABLE values ("hyq","M");
8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)
mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
9:导入.sql文件命令(例如D:/mysql.sql)
mysql必背50条语句
![mysql必背50条语句](https://img.taocdn.com/s3/m/448a40bec9d376eeaeaad1f34693daef5ff71353.png)
mysql必背50条语句1. 创建数据库:```sqlCREATE DATABASE dbname;```2. 删除数据库:```sqlDROP DATABASE dbname;```3. 选择数据库:```sqlUSE dbname;```4. 显示所有数据库:```sqlSHOW DATABASES;```5. 创建表:```sqlCREATE TABLE tablename (column1 datatype,column2 datatype,...);```6. 查看表结构:```sqlDESC tablename;```7. 删除表:```sqlDROP TABLE tablename;```8. 插入数据:```sqlINSERT INTO tablename (column1, column2, ...) VALUES (value1, value2, ...);```9. 查询数据:```sqlSELECT * FROM tablename;```10. 条件查询:```sqlSELECT * FROM tablename WHERE condition;```11. 更新数据:```sqlUPDATE tablename SET column1 = value1, column2 = value2 WHERE condition;```12. 删除数据:```sqlDELETE FROM tablename WHERE condition;```13. 查找唯一值:```sqlSELECT DISTINCT column FROM tablename;```14. 排序数据:```sqlSELECT * FROM tablename ORDER BY column ASC/DESC;```15. 限制结果集:```sqlSELECT * FROM tablename LIMIT 10;```16. 分页查询:```sqlSELECT * FROM tablename LIMIT 10 OFFSET 20;```17. 计算行数:```sqlSELECT COUNT(*) FROM tablename;```18. 聚合函数:```sqlSELECT AVG(column), SUM(column), MIN(column), MAX(column) FROM tablename;```19. 连接表:```sqlSELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column;```20. 创建索引:```sqlCREATE INDEX indexname ON tablename (column);```21. 查看索引:```sqlSHOW INDEX FROM tablename;```22. 删除索引:```sqlDROP INDEX indexname ON tablename;```23. 备份整个数据库:```sqlmysqldump -u username -p dbname > backup.sql;```24. 恢复数据库:```sqlmysql -u username -p dbname < backup.sql;```25. 修改表结构:```sqlALTER TABLE tablename ADD COLUMN newcolumn datatype;```26. 重命名表:```sqlRENAME TABLE oldname TO newname;```27. 增加主键:```sqlALTER TABLE tablename ADD PRIMARY KEY (column);```28. 删除主键:```sqlALTER TABLE tablename DROP PRIMARY KEY;```29. 增加外键:```sqlALTER TABLE tablename ADD CONSTRAINT fk_name FOREIGN KEY (column) REFERENCES othertable(column);```30. 删除外键:```sqlALTER TABLE tablename DROP FOREIGN KEY fk_name;```31. 查看活动进程:```sqlSHOW PROCESSLIST;```32. 杀死进程:```sqlKILL process_id;```33. 给用户授权:```sqlGRANT permission ON dbname.tablename TO 'username'@'host';```34. 撤销用户权限:```sqlREVOKE permission ON dbname.tablename FROM 'username'@'host';```35. 创建用户:```sqlCREATE USER 'username'@'host' IDENTIFIED BY 'password';```36. 删除用户:```sqlDROP USER 'username'@'host';```37. 修改用户密码:```sqlSET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');```38. 查看用户权限:```sqlSHOW GRANTS FOR 'username'@'host';```39. 启用外键约束:```sqlSET foreign_key_checks = 1;```40. 禁用外键约束:```sqlSET foreign_key_checks = 0;```41. 启用查询缓存:```sqlSET query_cache_type = 1;```42. 禁用查询缓存:```sqlSET query_cache_type = 0;```43. 查看服务器版本:```sqlSELECT VERSION();```44. 查看当前日期和时间:```sqlSELECT NOW();```45. 查找匹配模式:```sqlSELECT * FROM tablename WHERE column LIKE 'pattern';```46. 计算平均值:```sqlSELECT AVG(column) FROM tablename;```47. 查找空值:```sqlSELECT * FROM tablename WHERE column IS NULL;```48. 日期比较:```sqlSELECT * FROM tablename WHERE date_column > '2022-01-01';```49. 将结果导出为CSV 文件:```sqlSELECT * INTO OUTFILE 'output.csv' FIELDS TERMINATED BY ',' FROM tablename;```50. 将结果导入其他表:```sqlLOAD DATA INFILE 'input.csv' INTO TABLE tablename FIELDS TERMINATED BY ',';。
数据库常用命令
![数据库常用命令](https://img.taocdn.com/s3/m/50309847a8956bec0975e3ca.png)
一、操作技巧1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。
也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK。
2、你可以使用光标上下键调出以前的命令。
二、显示命令1、显示当前数据库服务器中的数据库列表:mysql> SHOW DATABASES;注意:mysql库里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。
2、显示数据库中的数据表:mysql> USE 库名;mysql> SHOW TABLES;3、显示数据表的结构4、建立数据库:mysql> CREATE DATABASE 库名;5、建立数据表:mysql> USE 库名;mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));6、删除数据库:mysql> DROP DATABASE 库名;7、删除数据表:mysql> DROP TABLE 表名;8、将表中记录清空:mysql> DELETE FROM 表名;9、显示表中的记录:mysql> SELECT * FROM 表名;10、往表中插入记录:mysql> INSERT INTO 表名 VALUES (”hyq”,”M”);11、更新表中数据:mysql-> UPDATE 表名 SET 字段名1=’a',字段名2=’b’ WHERE 字段名3=’c';12、用文本方式将数据装入数据表中:mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE 表名;13、导入.sql文件命令:mysql> USE 数据库名;mysql> SOURCE d:/mysql.sql;14、命令行修改root密码:mysql> UPDATE er SET password=PASSWORD(’新密码’) WHERE User=’root’; mysql> FLUSH PRIVILEGES;15、显示use的数据库名:mysql> SELECT DATABASE();16、显示当前的user:mysql> SELECT USER();三、一个建库和建表以及插入数据的实例drop database if exists school; //如果存在SCHOOL则删除create database school; //建立库SCHOOLuse school; //打开库SCHOOLcreate table teacher //建立表TEACHER(id int(3) auto_increment not null primary key,name char(10) not null,address varchar(50) default ‘深圳’,year date); //建表结束//以下为插入字段insert into teacher values(”,’allen’,'大连一中’,'1976-10-10′);insert into teacher values(”,’jack’,'大连二中’,'1975-12-23′);如果你在mysql提示符键入上面的命令也可以,但不方便调试。
MySQL数据库常用命令大全
![MySQL数据库常用命令大全](https://img.taocdn.com/s3/m/f63d9f95f5335a8103d22000.png)
一.衔接MySQL格局: mysql -h主机地址-u用户名-p用户暗码1.例1:衔接到本机上的MYSQL.起首在打开DOS窗口,然落后入目次mysqlbin,再键入敕令mysql -uroot -p,回车后提示你输暗码,假如刚装配好MYSQL,超等用户root是没有暗码的,故直接回车即可进入到MYSQL中了,MYSQL 的提示符是: mysql>.2.例2:衔接到长途主机上的MYSQL.假设长途主机的IP为:110.110.110.110,用户名为root,暗码为abcd123.则键入以下敕令:mysql -h110.110.110.110 -uroot -pabcd123(注:u与root可以不必加空格,其它也一样)3.退出MYSQL敕令: exit (回车).二.修正暗码格局:mysqladmin -u用户名 -p旧暗码 password 新暗码1.例1:给root加个暗码ab12.起首在DOS下进入目次mysqlbin,然后键入以下敕令:mysqladmin -uroot -password ab12注:因为开端时root没有暗码,所以-p旧暗码一项就可以省略了.2.例2:再将root的暗码改为djg345.mysqladmin -uroot -pab12 password djg345三.增长新用户.(留意:和上面不合,下面的因为是MySQL情形中的敕令,所今后面都带一个分号作为敕令停止符)格局:grant select on 数据库.* to 用户名@登录主机 identified by \"暗码\"例1.增长一个用户test1暗码为abc,让他可以在任何主机上登录,并对所稀有据库有查询.拔出.修正.删除的权限.起首用以root用户连入MySQL,然后键入以下敕令:grant select,insert,update,delete on *.* to test2@localhost identified by \"abc\";假如你不想test2有暗码,可以再打一个敕令将暗码消失落.grant select,insert,update,delete on mydb.* to test2@localhost identified by \"\";在上面讲了登录.增长用户.暗码更改等问题.下面我们来看看MySQL中有关数据库方面的操纵.留意:你必须起首登录到MySQL中,以下操纵都是在MySQL的提示符下进行的,并且每个敕令以分号停止.1.MySQL 经常应用敕令create database name; 创建数据库use databasename; 选择数据库drop database name 直接删除数据库,不提示show tables; 显示表describe tablename; 表的具体描写select 中加上distinct去除反复字段mysqladmin drop database name 删除数据库前,有提示.显示当前mysql版本和当前日期select version(),current_date;2.修正mysql中root 的暗码:shell>mysql -u root -pmysql> update user set password=password(”xueok654123″) where user=’root’;mysql> flush privileges //刷新数据库mysql>use dbname; 打开数据库:mysql>show databases; 显示所稀有据库mysql>show tables; 显示数据库mysql中所有的表:先use mysql;然后mysql>describe user; 显示表mysql数据库中user表的列信息);3.grant创建一个可以从任何地方衔接办事器的一个完全的超等用户,但是必须应用一个口令something做这个mysql> grant all privileges on *.* to user@localhost identified by ’something’ with增长新用户格局:grant select on 数据库.* to 用户名@登录主机identified by “暗码”GRANT ALL PRI VILEGES ON *.* TO monty@localhost IDENTIFIED BY ’something’ WITH GRANT OPTION;GRANT ALL PRIVILEGES ON *.* TO monty@”%” IDENTIFIED BY ’something’ WITH GRANT OPTION;删除授权:mysql> revoke all privileges on *.* from root@”%”;mysql> delete from user where user=”root” and host=”%”;mysql> flush privileges;创建一个用户custom在特定客户端登录,可拜访特定命据库fangchandbmysql >grant select, insert, update, delete, create,drop on fangchandb.* to custom@ identified by ‘ passwd’重定名表:mysql > alter table t1 rename t2;4.mysqldump10.操纵数据#拔出表departmentinsert into department(name,description) values('体系部','体系部');insert into department(name,description) values('公关部','公关部');insert into department(name,description) values('客服部','客服部');insert into department(name,description) values('财务部','财务部');insert into department(name,description) values('测试部','测试部');#拔出表s_positioninsert into s_position(name,description) values('总监','总监');insert into s_position(name,description) values('司理','司理');insert into s_position(name,description) values('通俗员工','通俗员工');#拔出表depart_posinsert into depart_pos(department_id,position_id)select a.id department_id,b.id postion_idfrom department a,s_position b;#拔出表stafferinsert into staffer(name,department_id,position_id) values('陈达治',1,1);insert into staffer(name,department_id,position_id) values('李文宾',1,2);insert into staffer(name,department_id,position_id) values('马佳',1,3);insert into staffer(name,department_id,position_id) values('亢志强',5,1);insert into staffer(name,department_id,position_id) values('杨玉茹',4,1);11.查询及删除操纵#显示体系部的人员和职位select , department_name, position_namefrom staffer a,department b,s_position cwherea.department_id=b.id and a.position_id=c.id and ='体系部';#显示体系部的人数select count(*) from staffer a,department bwhere a.department_id=b.id and ='体系部'#显示各部分的人数select count(*) cou,from staffer a,department bwhere a.department_id=b.idgroup by ;#删除客服部delete from department where name='客服部';#将财务部修正为财务一部update department set name='财务一部' where name='财务部';12.备份和恢复备份数据库stafferc:\mysql\bin\mysqldump -uroot -proot staffer>e:\staffer.sql得到的staffer.sql是一个sql剧本,不包含建库的语句,所以你须要手工创建数据库才可以导入恢复数据库staffer,须要创建一个空库stafferc:\mysql\bin\mysql -uroot -proot staffer<staffer.sql假如不愿望后来手工创建staffer,可以c:\mysql\bin\mysqldump -uroot -proot --databases staffer>e:\staffer.sqlmysql -uroot -proot >e:\staffer.sql但如许的话体系种就不克不及消失staffer库,且无法导入其他名字的数据库,当然你可以手工修正staffer.sql文件13.从文本向数据库导入数据1)应用对象c:\mysql\bin\mysqlimport这个对象的感化是将文件导入到和去失落文件扩大名名字雷同的表里,如staffer.txt,staffer都是导入到staffer表中经常应用选项及功效如下-d or --delete 新数据导入数据表中之前删除数据数据表中的所有信息-f or --force不管是否碰到错误,mysqlimport将强迫持续拔出数据-i or --ignore mysqlimport跳过或者疏忽那些有雷同独一症结字的行, 导入文件中的数据将被疏忽.-l or -lock-tables 数据被拔出之前锁住表,如许就防止了,你在更新数据库时,用户的查询和更新受到影响.-r or -WordStr 这个选项与-i选项的感化相反;此选项将替代表中有雷同独一症结字的记载.--fields-enclosed- by= char指定文本文件中数据的记载时以什么括起的, 许多情形下数据以双引号括起. 默认的情形下数据是没有被字符括起的.--fields-terminated- by=char指定各个数据的值之间的分隔符,在句号分隔的文件中,分隔符是句号.您可以用此选项指定命据之间的分隔符.默认的分隔符是跳格符(Tab)--lines-terminated- by=str此选项指定文本文件中行与行之间数据的分隔字符串或者字符. 默认的情形下mysqlimport以newline为行分隔符.您可以选择用一个字符串来替代一个单个的字符:一个新行或者一个回车.mysqlimport敕令经常应用的选项还有-v 显示版本(version),-p 提示输入暗码(password)等.这个对象有个问题,无法疏忽某些列,如许对我们的数据导入有很大的麻烦,固然可以手工设置这个字段,但会消失莫名其妙的成果,我们做一个简略的示例我们界说如下的depart_no.txt,保管在e盘,距离为制表符\t10 1011 1112 24履行如下敕令c:\mysql\bin\mysqlimport -uroot -proot staffer e:\depart_pos.txt在这里没有应用列的包抄符号,朋分采取默认的\t,因为采取此外符号会有问题,不知道是不是windows的原因2)Load Data INFILE file_name into table_name(column1_name,column2_name)这个敕令在mysql>提示符下应用,长处是可以指定列导入,示例如下c:\mysql\bin\mysql -uroot -proot staffermysql>load data infile "e:/depart_no.txt" into depart_no(department_id,position_id);这两个对象在Windows 下应用都有问题,不知道是Windows的原因照样中文的问题,并且不指定的列它产生了空值,这显然不是我们想要的,所以谨严应用这些对象进入MySQL:mysql -uuser -ppassword --port=33071:应用SHOW语句找出在办事器受骗前消失什么数据库:mysql> SHOW DATABASES;2:2.创建一个数据库MYSQLDATAmysql> Create DATABASE MYSQLDATA;3:选择你所创建的数据库mysql> USE MYSQLDATA; (按回车键消失Database changed 时解释操纵成功!)4:检讨如今的数据库中消失什么表mysql> SHOW TABLES;5:创建一个数据库表mysql> Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));6:显示表的构造:mysql> DESCRIBE MYTABLE;7:往表中参加记载mysql> insert into MYTABLE values ("hyq","M");8:用文本方法将数据装入数据库表中(例如D:/mysql.txt)mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;9:导入.sql文件敕令(例如D:/mysql.sql)mysql>use database;mysql>source d:/mysql.sql;10:删除表mysql>drop TABLE MYTABLE;11:清空表mysql>delete from MYTABLE;12:更新表中数据mysql>update MYTABLE set sex="f" where name='hyq';UPDATE [LOW_PRIORITY] [IGNORE] tbl_nameSET col_name1=expr1 [, col_name2=expr2 ...][WHERE where_definition][ORDER BY ...][LIMIT rows]orUPDATE [LOW_PRIORITY] [IGNORE] tbl_name [, tbl_name ...]SET col_name1=expr1 [, col_name2=expr2 ...][WHERE where_definition]UPDATE 以新的值更新现存表中行的列.SET 子句指出要修正哪个列和他们应当给定的值.WHERE子句假如被给出,指定哪个记载行应当被更新.不然,所有的记载行被更新.假如 ORDER BY 子句被指定,记载行将被以指定的次序更新.假如你指定症结词 LOW_PRIORITY,UPDATE 的履行将被延迟,直到没有其它的客户正直在读取表.假如你指定症结词 IGNORE,该更新语句将不会平常中断,即使在更新进程中消失反复键错误.导致冲突的记载行将不会被更新.假如在一个表达式中从 tbl_name 中拜访一个列,UPDATE 应用列的当前值.举例来说,下面的语句设置 age 列值为它的当前值加 1 :mysql> UPDATE persondata SET age=age+1;UPDATE 赋值是从左到右盘算的.举例来说,下列语句将 age 列设置为它的两倍,然后再加 1 :mysql> UPDATE persondata SET age=age*2, age=age+1;假如你设置列为其当前的值,MySQL 留意到这点,其实不更新它.UPDATE 返回现实被转变的记载行数量.在 MySQL 3.22 或更新的版本中,C API 函数 mysql_info()返回被匹配并更新的记载行数量,以及在 UPDATE时代产生的警告的数量.在 MySQL 3.23 中,你可以应用 LIMIT # 来确保只有给定的记载行数量被更改.假如一个 ORDER BY 子句被应用(从 MySQL 4.0.0 开端支撑),记载行将以指定的次序被更新.这现实上只有连同 LIMIT一路才有效.从 MySQL 4.0.4 开端,你也可以履行一个包含多个表的UPDATE 的操纵:UPDATE items,month SET items.price=month.priceWHERE items.id=month.id;留意:多表 UPDATE 不成以应用 ORDER BY 或 LIMIT.症结字: mysql启动:net start mySql; 进入:mysql -u root -p/mysql -h localhost -u root -p databaseName; 列出数据库:show databases; 选择数据库:use databaseName; 列出表格:show tables; 显示表格列的属性:show columns from tableName; 树立数据库:source fileName.txt; 匹配字符:可以用通配符_代表任何一个字符,%代表任何字符串; 增长一个字段:alter table tabelName add column fieldName dateType;增长多个字段:alter table tabelName add column fieldName1 dateType,add columns fieldName2 dateType; 多行敕令输入:留意不克不及将单词断开;当拔出或更改数据时,不克不及将字段的字符串睁开到多行里,不然硬回车将被储存到数据中; 增长一个治理员帐户:grant all on *.* to user@localhost identified by "password"; 每条语句输入完毕后要在末尾填加分号';',或者填加'\g'也可以; 查询时光:select now();查询当前用户:select user(); 查询数据库版本:select version(); 查询当前应用的数据库:select database();1.删除student_course数据库中的students数据表:rm -f student_course/students.*2.备份数据库:(将数据库test 备份) mysqldump -u root -p test>c:\test.txt 备份表格:(备份test数据库下的mytable表格) mysqldump -u root -p test mytable>c:\test.txt 将备份数据导入到数据库:(导回test数据库) mysql -u root -p test3.创建暂时表:(树立暂时表zengchao) create temporary table zengchao(name varchar(10));4.创建表是先断定表是否消失create table if not exists students(……);5.从已经有的表中复制表的构造create table table2 select * from table1 where 1<>1;6.复制表create table table2 select * from table1;7.对表从新定名alter table table1 rename as table2;8.修正列的类型alter table table1 modify id int unsigned;//修正列id的类型为int unsigned alter table table1 change id sid int unsigned;//修正列id的名字为sid,并且把属性修正为int unsigned9.创建索引alter table table1 add index ind_id (id);create index ind_id on table1 (id); create unique index ind_id on table1 (id);//树立独一性索引10.删除索引drop index idx_id on table1;alter table table1 drop index ind_id; 11.结合字符或者多个列(将列id与":"和列name和"="衔接)select concat(id,':',name,'=') from students; 12.limit(选出10到20条)<第一个记载集的编号是0> select * from students order by id limit 9,10; 13.MySQL不支撑的功效事务,视图,外键和引用完全性,存储进程和触发器14.MySQL会应用索引的操纵符号<,<=,>=,>,=,between,in,不带%或者_开首的like 15.应用索引的缺陷1)减慢增删改数据的速度; 2)占用磁盘空间; 3)增长查询优化器的累赘; 当查询优化器生成履行筹划时,会斟酌索引,太多的索引会给查询优化器增长工作量,导致无法选择最优的查询筹划; 16.剖析索引效力办法:在一般的SQL语句前加上explain; 剖析成果的寄义:1)table:表名; 2)type:衔接的类型,(ALL/Range/Ref).个中ref是最幻想的; 3)possible_keys:查询可以应用的索引名; 4)key:现实应用的索引; 5)key_len:索引中被应用部分的长度(字节); 6)ref:显示列名字或者"const"(不明确什么意思); 7)rows:显示MySQL以为在找到准确成果之前必须扫描的行数; 8)extra:MySQL的建议; 17.应用较短的定长列1)尽可能应用较短的数据类型; 2)尽可能应用定长数据类型; a)用char代替varchar,固定长度的数据处理比变长的快些; b)对于频仍修正的表,磁盘轻易形成碎片,从而影响数据库的整体机能; c)万一消失数据表解体,应用固定长度数据行的表更轻易从新构造.应用固定长度的数据行,每个记载的开端地位都是固定记载长度的倍数,可以很轻易被检测到,但是应用可变长度的数据行就不一定了; d)对于MyISAM 类型的数据表,固然转换成固定长度的数据列可以进步机能,但是占领的空间也大; 18.应用not null和enum 尽量将列界说为not null,如许可使数据的出来更快,所需的空间更少,并且在查询时,MySQL不须要检讨是否消失特例,即null值,从而优化查询; 假如一列只含有有限数量标特定值,如性别,是否有效或者入学年份等,在这种情形下应当斟酌将其转换为enum列的值,MySQL处理的更快,因为所有的enum值在体系内都是以标识数值来暗示的; 19.应用optimize table 对于经常修正的表,轻易产生碎片,使在查询数据库时必须读取更多的磁盘块,降低查询机能.具有可变长的表都消失磁盘碎片问题,这个问题对blob数据类型更为凸起,因为其尺寸变更平常大.可以经由过程应用optimize table来整顿碎片,包管数据库机能不降低,优化那些受碎片影响的数据表. optimize table可以用于MyISAM和BDB类型的数据表.现实上任何碎片整顿办法都是用mysqldump来转存数据表,然后应用转存后的文件着从新建数据表;20.应用procedure analyse() 可以应用procedure analyse()显示最佳类型的建议,应用很简略,在select语句后面加上procedure analyse()就可以了;例如:select * from students procedure analyse(); select * from students procedureanalyse(16,256); 第二条语句请求procedure analyse()不要建议含有多于16个值,或者含有多于256字节的enum类型,假如没有限制,输出可能会很长; 21.应用查询缓存1)查询缓存的工作方法:第一次履行某条select语句时,办事器记住该查询的文本内容和查询成果,存储在缓存中,下次碰着这个语句时,直接从缓存中返回成果;当更新数据表后,该数据表的任何缓存查询都变成无效的,并且会被丢弃. 2)设置装备摆设缓存参数:变量:query_cache _type,查询缓存的操纵模式.有3中模式,0:不缓存;1:缓存查询,除非与 select sql_no_cache开首;2:依据须要只缓存那些以select sql_cache开首的查询; query_cache_size:设置查询缓存的最大成果集的大小,比这个值大的不会被缓存. 22.调剂硬件1)在机械上装更多的内存; 2)增长更快的硬盘以削减I/O等待时光; 寻道时光是决议机能的重要身分,逐字地移动磁头是最慢的,一旦磁头定位,从磁道读则很快; 3)在不合的物理硬盘装备上从新分派磁盘运动; 假如可能,应将最忙碌的数据库存放在不合的物理装备上,这跟应用统一物理装备的不合分区是不合的,因为它们将争用雷同的物理资本(磁头).。
mql常用指令
![mql常用指令](https://img.taocdn.com/s3/m/65695192daef5ef7ba0d3c9e.png)
这样,就在表dbname中添加了一个字段userid,类型为int(11)。
7.mysql数据库的授权
mysql>grant select,insert,delete,create,drop
Tim_chao的专栏
登录注册全站当前博客空间博客好友相册留言 MYSQL命令行常用命令(1)收藏
MySQL常用操作基本操作,以下都是MySQL5.0下测试通过首先说明下,记住在每个命令结束时加上;(分号)
1.导出整个数据库
mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1)
(2)导入auction.sql文件
c:mysqlbin>mysql -u root -p auction < auction.sql。
通过以上操作,就可以创建了一个数据库auction以及其中的一个表auction。
6.修改数据库
(1)在mysql的表中增加字段:
mysql> insert into MyClass values(1,''Tom'',96.45),(2,''Joan'',82.99), (2,''Wang'', 96.59);
5、查询表中的数据
1)、查询所有行
命令: select <字段1,字段2,...> from < 表名 > where < 表达式 >
mysql常用命令大全_最完整版
![mysql常用命令大全_最完整版](https://img.taocdn.com/s3/m/9fe462cdb14e852458fb574a.png)
enum 列的值, MySQL 处理的更ቤተ መጻሕፍቲ ባይዱ, 因为所有的 enum 值在系统内都是
optimize table 来整理碎片,保证数据库性能不下降,优 optimize table 可以用于 MyISAM 和 BDB 类型的数据表。实际
mysqldump 来转存数据表,然后使用转存后的文件并重新建数
查询都变成无效的,并且会被丢弃。 2)配置缓存参数: 变量: query_cache _type ,查询缓存的操作模式。有 询,除非与 3 中模式, 0 :不缓存; 1:缓存查 select sql_cache 开头的查 select sql_no_cache 开头; 2:根据需要只缓存那些以
mysql 命令大全
启动: net start mySql; 进入: mysql -u root -p/mysql -h localhost -u root -p databaseName; 列出数据库: show databases; 选择数据库: use databaseName; 列出表格: show tables ; 显示表格列的属性: show columns from tableName ; _代表任何一个字符,%代表任何字符串 ; 建立数据库: source fileName.txt; 匹配字符:可以用通配符 增加多个字段: fieldName2 dateType; 多行命令输入 :注意不能将单词断开 多行里,否则硬回车将被储存到数据中 增加一个管理员帐户: ; ';' ,或者填加 '\g' 也可以; ;当插入或更改数据时,不能将字段的字符串展开到 增加一个字段: alter table tabelName add column fieldName dateType; alter table tabelName add column fieldName1 dateType,add columns
MYSQL常用查询命令
![MYSQL常用查询命令](https://img.taocdn.com/s3/m/2efc2734e2bd960590c6772c.png)
删除 primary key 1、alter table tablename drop primary key; 2、drop primary key on tablename; 修改 table 表数据引擎 mysql> alter table tableName ENGINE = MyISAM (InnoDB); 增加一新字段名: mysql> alter table mytable add column single char(1); mysql> ALTER TABLE table ADD field INT(11) UNSIGNED NOT NULL 删除字段 mysql> alter table t2 drop column c; 附: 为了改变列 a,从 INTEGER 改为 TINYINT NOT NULL(名字一样), 并且改变列 b,从 CHAR(10)改为 CHAR(20),同时重命名它,从 b 改为 c: ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20); 增加一个新 TIMESTAMP 列,名为 d: ALTER TABLE t2 ADD d TIMESTAMP; 在列 d 上增加一个索引,并且使列 a 为主键: ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a); 增加一个新的 AUTO_INCREMENT 整数列,命名为 c: ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c); 注意,我们索引了 c,因为 AUTO_INCREMENT 柱必须被索引, 并且另外我们声明 c 为 NOT NULL,因为索引了的列不能是 NULL。 使用 name 列的头 10 个字符创建一个索引: CREATE INDEX part_of_name ON customer (name(10));
在mysql中使用的linux命令
![在mysql中使用的linux命令](https://img.taocdn.com/s3/m/35b515b405a1b0717fd5360cba1aa81144318ff5.png)
在mysql中使用的linux命令在MySQL中,你可以使用一些Linux命令来进行数据库管理和操作。
以下是一些常用的Linux命令:登录MySQL数据库:mysql -u 用户名-p这个命令将提示你输入密码,然后登录到MySQL数据库。
退出MySQL数据库:exit这个命令用于退出MySQL数据库。
创建数据库:mysqladmin -u 用户名-p create 数据库名这个命令可以创建一个新的数据库。
删除数据库:mysqladmin -u 用户名-p drop 数据库名这个命令可以删除一个数据库。
显示数据库列表:mysql -u 用户名-p -e 'show databases;'这个命令可以列出所有数据库的名称。
备份数据库:mysqldump -u 用户名-p 数据库名> 备份文件.sql这个命令可以将数据库备份到一个SQL文件中。
恢复数据库:mysql -u 用户名-p 数据库名< 备份文件.sql这个命令可以从一个SQL文件中恢复数据库。
显示表列表:mysql -u 用户名-p 数据库名-e 'show tables;'这个命令可以列出指定数据库中所有表的名称。
执行SQL查询:mysql -u 用户名-p 数据库名-e 'SQL查询语句;'这个命令可以执行指定的SQL查询语句并输出结果。
这些是一些常用的Linux命令,可以帮助你在MySQL数据库中进行一些基本的管理和操作。
请注意,在使用这些命令时要小心谨慎,以防止意外删除或修改数据库中的重要数据。
MySQL数据库管理常用命令
![MySQL数据库管理常用命令](https://img.taocdn.com/s3/m/19311ed880eb6294dd886c2b.png)
root密码管理设置root用户的密码mysqladmin -uroot password 'password'。
修改root用户的密码mysqladmin -uroot -p password 'password'。
数据库,表管理进入mysqlmysql -h hostname -uroot -p。
创建数据库mysql> create database location。
导入数据结构mysql -uroot -p location <./location.sql。
查看数据库mysql> show databases;进入某个库mysql> use location;查看表信息mysql> show tables;查看表结构mysql> desc Contact;改表名mysql> rename table Contact to Contact_new。
删除库mysql> drop database location。
删除表mysql> drop table Contact。
授权部分建立用户并授权mysql> grant all on location.* to gk1020@'10.1.11.71' identified by 'gk1020'。
取消授权mysql> revoke all on location.* from gk1020@'10.1.11.71'。
刷新权限mysql> flush privileges。
操作语句查询mysql> select * from Contact。
mysql> select count(*) from Contact。
修改mysql> update Contact set RegTime=‘2008-01-01 00:00:00’ where id=1。
mysql 查询表的sql语句
![mysql 查询表的sql语句](https://img.taocdn.com/s3/m/63c26b2ba9114431b90d6c85ec3a87c241288a51.png)
mysql 查询表的sql语句MySQL是一种关系型数据库管理系统,它支持SQL语言,可以用来查询、插入、更新和删除数据。
在MySQL中,查询表是最常用的操作之一,因为它可以帮助我们获取所需的数据。
下面是一些常用的MySQL查询表的SQL语句。
1. SELECT语句:SELECT语句是最基本的查询语句,它用于从表中选择数据。
例如,SELECT * FROM table_name; 将返回表中的所有数据。
2. WHERE语句:WHERE语句用于过滤数据,只返回符合条件的数据。
例如,SELECT * FROM table_name WHERE column_name = 'value'; 将返回列名为column_name,值为value的所有数据。
3. ORDER BY语句:ORDER BY语句用于按照指定的列对数据进行排序。
例如,SELECT * FROM table_name ORDER BY column_name ASC; 将按照升序排列列名为column_name的数据。
4. GROUP BY语句:GROUP BY语句用于将数据按照指定的列进行分组。
例如,SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name; 将按照列名为column_name进行分组,并计算每组的数量。
5. JOIN语句:JOIN语句用于将两个或多个表中的数据进行联合查询。
例如,SELECT * FROM table1 JOIN table2 ONtable1.column_name = table2.column_name; 将返回两个表中列名相同的数据。
6. DISTINCT语句:DISTINCT语句用于返回不重复的数据。
例如,SELECT DISTINCT column_name FROM table_name; 将返回列名为column_name的不重复数据。
linux mysql 命令参数
![linux mysql 命令参数](https://img.taocdn.com/s3/m/2e94ef4a0640be1e650e52ea551810a6f524c88f.png)
linux mysql 命令参数MySQL是一个广泛使用的关系型数据库管理系统,它可以在各种操作系统上运行,其中包括Linux操作系统。
在Linux上,使用MySQL 时,有许多不同的命令参数可供选择,用于执行各种任务和配置选项。
以下将介绍一些常用的MySQL命令参数,并提供简要解释。
1. --user (-u):指定连接MySQL的用户名。
示例:mysql -u root2. --password (-p):指定连接MySQL的密码。
示例:mysql -u root -p3. --host (-h):指定连接MySQL的主机名或IP地址。
示例:mysql -u root -h localhost4. --database (-D):指定连接MySQL的默认数据库。
示例:mysql -u root -D mydatabase5. --port (-P):指定连接MySQL的端口号。
示例:mysql -u root -P 33066. --socket (-S):指定连接MySQL的套接字文件。
示例:mysql -u root -S /var/run/mysqld/mysqld.sock7. --execute (-e):执行指定的SQL语句。
示例:mysql -u root -e "SELECT * FROM mytable"8. --silent (-s):屏蔽错误和警告信息。
示例:mysql -u root -s9. --verbose (-v):显示详细的信息。
示例:mysql -u root -v10. --show-warnings:显示警告信息。
示例:mysql -u root --show-warnings11. --batch (-B):以批处理模式运行,适用于将结果导出到文件。
示例:mysql -u root -B -e "SELECT * FROM mytable" > output.txt12. --html:以HTML格式显示查询结果。
MySQL导入SQL文件及常用命令
![MySQL导入SQL文件及常用命令](https://img.taocdn.com/s3/m/849882c729ea81c758f5f61fb7360b4c2e3f2a7f.png)
MySQL导⼊SQL⽂件及常⽤命令在MySQL Qurey Brower中直接导⼊*.sql脚本,是不能⼀次执⾏多条sql命令的,在mysql中执⾏sql⽂件的命令:mysql> source d:/myprogram/database/db.sql;另附mysql常⽤命令:⼀) 连接MYSQL:格式: mysql -h主机地址 -u⽤户名-p⽤户密码1、例1:连接到本机上的MYSQL⾸先在打开DOS窗⼝,然后进⼊mysql安装⽬录下的bin⽬录下,例如: D:/mysql/bin,再键⼊命令mysql -uroot -p,回车后提⽰你输密码,如果刚安装好MYSQL,超级⽤户root是没有密码的,故直接回车即可进⼊到MYSQL中了,MYSQL的提⽰符是:mysql>2、例2:连接到远程主机上的MYSQL (远程:IP地址)假设远程主机的IP为:10.0.0.1,⽤户名为root,密码为123。
则键⼊以下命令:mysql -h10.0.0.1 -uroot -p123(注:u与root可以不⽤加空格,其它也⼀样)3、退出MYSQL命令exit (回车)(⼆) 修改密码:格式:mysqladmin -u⽤户名 -p旧密码 password 新密码1、例1:给root加个密码123。
⾸先在DOS下进⼊⽬录C:/mysql/bin,然后键⼊以下命令:mysqladmin -uroot -password 123注:因为开始时root没有密码,所以-p旧密码⼀项就可以省略了。
2、例2:再将root的密码改为456mysqladmin -uroot -pab12 password 456(三) 增加新⽤户:(注意:和上⾯不同,下⾯的因为是MYSQL环境中的命令,所以后⾯都带⼀个分号作为命令结束符)格式:grant select on 数据库.* to ⽤户名@登录主机 identified by "密码"例1、增加⼀个⽤户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插⼊、修改、删除的权限。
my sql常用命令
![my sql常用命令](https://img.taocdn.com/s3/m/9f94e18c9fc3d5bbfd0a79563c1ec5da50e2d68a.png)
my sql常用命令MySQL是一种流行的关系型数据库管理系统,它提供了许多常用的命令来管理数据库和执行数据操作。
在本文中,我们将介绍一些常用的MySQL命令,以帮助您更好地理解和使用MySQL。
1. 连接到MySQL服务器。
要连接到MySQL服务器,您可以使用以下命令:mysql -u 用户名 -p.这将提示您输入密码,然后连接到MySQL服务器。
2. 创建数据库。
要创建一个新的数据库,您可以使用以下命令:CREATE DATABASE database_name;这将创建一个名为“database_name”的新数据库。
3. 选择数据库。
要在MySQL中选择一个数据库进行操作,您可以使用以下命令: USE database_name;这将使您可以在指定的数据库中执行操作。
4. 创建表。
要在数据库中创建一个新的表,您可以使用以下命令:CREATE TABLE table_name (。
column1 datatype,。
column2 datatype,。
...);这将创建一个名为“table_name”的新表,其中包含指定的列和数据类型。
5. 插入数据。
要向表中插入新的数据,您可以使用以下命令:INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);这将向指定的表中插入新的数据行。
6. 查询数据。
要从表中检索数据,您可以使用以下命令:SELECT column1, column2, ... FROM table_name WHERE condition;这将返回符合指定条件的数据行和列。
7. 更新数据。
要更新表中的数据,您可以使用以下命令:UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;这将更新表中符合指定条件的数据行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见2。
2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),
13、导入.sql文件命令:
mysql> USE 数据库名;
mysql> SOURCE d:/mysql.sql;
14、命令行修改root密码:
mysql> UPDATE er SET password=PASSWORD('新密码') WHERE User='root';
4 mike 大连一中 1975-12-23
假设你把这两组数据存为school.txt文件,放在c盘根目录下。
2、数据传入命令 load data local infile "c:\\school.txt" into table 表名;
注意:你最好将文件复制到\\mysql\\bin目录下,并且要先用use命令打表所在的库。
这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。
grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
11、更新表中数据:
mysql-> UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';
12、用文本方式将数据装入数据表中:
mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE 表名;
7、删除数据表:
mysql> DROP TABLE 表名;
8、将表中记录清空:
mysql> DELETE FROM 表名;
9、显示表中的记录:
mysql> SELECT * FROM 表名;
10、往表中插入记录:
mysql> INSERT INTO 表名 VALUES ("hyq","M");
4、建立数据库:
mysql> CREATE DATABASE 库名;
5、建立数据表:
mysql> USE 库名;
mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));
6、删除数据库:
mysql> DROP DATABASE 库名;
(1)你可以将以上命令原样写入一个文本文件中,假设为school.sql,然后复制到c:\\下,并在DOS状态进入目录\\mysql\\bin,然后键入以下命令:
mysql -uroot -p密码 < c:\\school.sql
如果成功,空出一行无任何显示;如有错误,会有提示。(以上命令已经调试,你只要将//的注释去掉即可使用)。
mysql> FLUSH PRIVILEGES;
注意用此种方法修改密码时别忘了 password=password('新密码') 如果直接用 password='新密码',下次登录时会出现问题以至于登录不进去,因为此密码没用经过password()函数处理,这样写入到user表中的密码系统不能识别就会显示用户名和密码错误的信息。
); //建表结束
//以下为插入字段
insert into teacher values('','allen','大连一中','1976-10-10');
insert into teacher values('','jack','大连二中','1975-12-23');
如果你在mysql提示符键入上面的命令也可以,但不方便调试。
五、备份数据库:(命令在DOS的\\mysql\\bin目录下执行)
1.导出整个数据库
导出文件默认是存在mysql\bin目录下
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u user_name -p123456 database_name > outfile_name.sql
16、显示当前的user:
mysql> SELECT USER();
三、一个建库和建表以及插入数据的实例
drop database if exists school; //如果存在SCHOOL则删除
create database school; //建立库SCHOOL
use school; //打开库SCHOOL
MYSQL 常用命令收集
一、连接MYSQL。
格式: mysql -h主机地址 -u用户名 -p用户密码
1、连接到本机上的MYSQL。
首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.
格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"
1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用root用户连入MYSQL,然后键入以下命令:
grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";
如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>
2、连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:
mysql -h110.110.110.110 -u root -p 123;(注:u与root之间可以不用加空格,其它也一样)
如果在修改密码的过程中出现问题以至于没有一个用户可以进入mysql则可以用以下的方法重新修改用户名和密码:
bin>mysqld --skip-grant-tables;然后再在 另外一个bin>mysql 便可直接进入mysql ,进入后便修改相关数据。
15、显示use的数据库名:
mysql> SELECT DATABASE();
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
2、再将root的密码改为djg345。
mysqladmin -u root -p ab12 password djg345
三、增加新用户。
(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)
3、退出MYSQL命令: exit (回车)
二、修改密码。
格式:mysqladmin -u用户名 -p旧密码 password 新密码
1、给root加个密码ab12。首先在DOS下进入目录mysql\bin,然后键入以下命令
mysqladmin -u root -password ab12
create table teacher //建立表TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default '深圳',
year date
(2)或者进入命令行后使用 mysql> source c:\\school.sql; 也可以将school.sql文件导入数据库中。
四、将文本数据转到数据库中
1、文本数据应符合的格式:字段数据之间用tab键隔开,null值用\\n来代替.例:
3 rose 大连二中 1976-10-10
mysql> SHOW DATABASES;
注意:mysql库里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。
2、显示数据库中的数据表:
mysql> USE 库名;
mysql> SHOW TABLES;
3、显示数据表的结构:
mysql> BE 表名;
如果你不想test2有密码,可以再打一个命令将密码消掉。
grant select,insert,update,delete on mydb.* to test2@localhost identified by "";
下篇我是MYSQL中有关数据库方面的操作。注意:你必须首先登录到MYSQL中,以下操作都是在MYSQL的提示符下进行的,而且每个命令以分号结束。
一、操作技巧
1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。
也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK。