加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 财气网 (https://www.caiqiwang.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql命令大全

发布时间:2022-09-21 15:09:47 所属栏目:MySql教程 来源:
导读:  Mysql 常用命令set names gbk 转变所选数据库中所有的字段的编码 在 dos 命令行所敲入的都是 gbk 如果 mysql 默认的命令是别的 如果不写这句话就会不能执行 mysql 写了之后 mysql 会转化为 gbk 为系统默认的编
  Mysql 常用命令set names gbk 转变所选数据库中所有的字段的编码 在 dos 命令行所敲入的都是 gbk 如果 mysql 默认的命令是别的 如果不写这句话就会不能执行 mysql 写了之后 mysql 会转化为 gbk 为系统默认的编码show create table 可以显示创建表的所有的信息 describe tablename; 显示具体的表结构 select 中加上 distinct 去除重复字段 mysqladmin drop databasename 删除数据库前有提示。 显示当前 mysql 版本和当前日期 select version(),current_date; 修改 mysql 中 root 的密码 shell>mysql -h localhost -u root -p //登录 mysql> update user set password=password("xueok654123") where user='root'; mysql> flush privileges //刷新数据库 mysql>show tables; 显示数据库 mysql 中所有的表先 use mysql;然后 mysql>describe user; 显示表 mysql 数据库中 user 表的列信息); grant 创建用户 firstdb(密码 firstdb)和数据库并赋予权限于 firstdb 数据库 mysql> create database firstdb; mysql> grant all on firstdb.* to firstdb identified by 'firstdb' 会自动创建用户 firstdb mysql 默认的是本地主机是 localhostmysql命令,对应的 IP 地址就是 127.0.0.1 所以你用你的 IP地址登录会出错如果你想用你的 IP 地址登录就要先进行授权用 grant 命令。
 
  mysql>grant all on *.* to root@202.116.39.2 identified by "123456"; 说明:grant 与 on 之间是各种权限例如:insert,select,update 等 on 之后是数据库名和表名,第一个*表示所有的数据库第二个*表示所有的表 root 可以改成你的用户名@后可以跟域名或 IP 地址identified by 后面的是登录用的密码可以省略即缺省密码或者叫空密码。 drop database firstdb; 创建一个可以从任何地方连接服务器的一个完全的超级用户但是必须使用一个口令something 做这个 mysql> grant all privileges on *.* to user@localhost identified by 'something' with 增加新用户 格式grant select on 数据库.* to 用户名@登录主机 identified by "密码" GRANT ALL PRIVILEGES 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 在特定客户端 it363.com 登录可访问特定数据库 fangchandb mysql >grant select, insert, update, delete, create,drop on fangchandb.* to custom@ it363.com identified by ' passwd' 重命名表: mysql > alter table t1 rename t2; mysqldump 备份数据库 shell> mysqldump -h host -u root -p dbname >dbname_backup.sql 恢复数据库 shell> mysqladmin -h myhost -u root -p create dbname shell> mysqldump -h host -u root -p dbname < dbname_backup.sql 如果只想卸出建表指令则命令如下 shell> mysqladmin -u root -p -d databasename > a.sql 如果只想卸出插入数据的 sql 命令而不需要建表命令则命令如下 shell> mysqladmin -u root -p -t databasename > a.sql 那么如果我只想要数据而不想要什么 sql 命令时应该如何操作呢? mysqldump -T./ phptest driver 其中只有指定了-T 参数才可以卸出纯文本文件表示卸出数据的目录./表示当前目录即与 mysqldump 同一目录。
 
  如果不指定 driver 表则将卸出整个数据库的数据。每个表会生成两个文件一个为.sql 文件包含建表执行。另一个为.txt 文件只包含数据且没有 sql 指令。 可将查询存储在一个文件中并告诉 mysql 从文件中读取查询而不是等待键盘输入。可利用外壳程序键入重定向实用程序来完成这项工作。例如如果在文件 my_file.sql 中存放有查 询可如下执行这些查询 例如如果您想将建表语句提前写在 sql.txt 中 mysql > mysql -h myhost -u root -p Mysql5.0 支持的字符集 MySQL 中的字符集控制做得比较细可以分为数据库级表级字段级(这一点和 ORACLE不同)。我上次改的字符集是数据库级的对表 sysuser 没有影响所以出现了改了字符集却一样无法插入中文的情况。 Drop TABLE IF EXISTS `firstdb`.`users`; Create TABLE `firstdb`.`users` ( `id` int(11) NOT NULL auto_increment, `username` varchar(40) default NULL, `birthday` date default NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=gb2312; 编译 MySQL 时指定了一个默认的字符集这个字符集是 latin1; 安装 MySQL 时可以在配置文件 (my.ini) 中指定一个默认的的字符集如果没指定这个值继承自编译时指定的;启动 mysqld 时可以在命令行参数中指定一个默认的的字符集如果没指定这个值继承自配置文件中的; 此时 character_set_server 被设定为这个默认的字符集; 当创建一个新的数据库时除非明确指定这个数据库的字符集被缺省设定为 character_set_server; 当选定了一个数据库时character_set_database 被设定为这个数据库默认的字符集; 在这个数据库里创建一张表时 表默认的字符集被设定为 character_set_database 也就是这个数据库默认的字符集; 当在表内设置一栏时除非明确指定否则此栏缺省的字符集就是表默认的字符集; 这个字符集就是数据库中实际存储数据采用的字符集mysqldump 出来的内容就是这个字符集下的;Query Browser1.1 对中文输入的支持太差劲了可以用 notebook 写好后再copy 过去执行 update firstdb.users set username='以' where id=3; MYSQL 常用命令 1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的 文件名(数据库默认编码是 latin1) mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql 2.导出一个表 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql 3.导出一个数据库结构 mysqldump -u wcnc -p -d -add-drop-table smgp_apps_wcnc >d:wcnc_db.sql -d 没有数据 -add-drop-table 在每个 create 语句之前增加一个 drop table 4.导入数据库 A:常用 source 命令 进入 mysql 数据库控制台 如 mysql -u root -p mysql>use 数据库 然后使用 source 命令后面参数为脚本文件(如这里用到的.sql) mysql>source wcnc_db.sql B:使用 mysqldump 命令 mysqldump -u username -p dbname < filename.sql C:使用 mysql 命令 mysql -u username -p -D dbname < filename.sql 一、启动与退出 1、进入 MySQL启动 MySQL Command Line Client(MySQL 的 DOS 界面)直接输入 安装时的密码即可。
 
  此时的提示符是mysql> 2、退出 MySQLquit 或 exit 二、库操作 1、查看当前使用的数据库 mysql> select database(); 三、表操作操作之前应连接某个数据库 1、建表命令create table <表名> ( <字段名 1> <类型 1> [,..<字段名 n> <类型 n>]); mysql> create table MyClass( > id int(4) not null primary key auto_increment, > name char(20) not null, > sex int(4) not null default '0', > degree double(16,2)); 2、获取表结构 命令 desc 表名或者 show columns from 表名 mysql>DESCRIBE MyClass mysql> desc MyClass; mysql> show columns from MyClass; 3、删除表 命令drop table <表名> 例如删除表名为 MyClass 的表 mysql> drop table MyClass; 4、插入数据 命令insert into <表名> [( <字段名 1>[,..<字段名 n > ])] values ( 值 1 )[, ( 值 n )] 例如往表 MyClass 中插入二条记录, 这二条记录表示编号为 1 的名为 Tom 的成绩 为 96.45, 编号为 2 的名为 Joan 的成绩为 82.99编号为 3 的名为 Wang 的成绩为 96.5. mysql> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59); 5、查询表中的数据 1)、查询所有行 命令 select <字段 1字段 2...> from < 表名 > where < 表达式 > 例如查看表 MyClass 中所有数据 mysql> select * from MyClass; 2)、查询前几行数据 例如查看表 MyClass 中前 2 行数据 mysql> select * from MyClass order by id limit 0,2; 或者 mysql> select * from MyClass limit 0,2; 6、删除表中数据 命令delete from 表名 where 表达式 例如删除表 MyClass 中编号为 1 的记录 mysql> delete from MyClass where id=1; 7、修改表中数据update 表名 set 字段=新值,? where 条件 mysql> update MyClass set where id=1; 7、在表中增加字段 命令alter table 表名 add 字段 类型其他; 例如在表 MyClass 中添加了一个字段 passtest类型为 int(4)默认值为 0 mysql> alter table MyClass add passtest int(4) default '0' 8、更改表名命令rename table 原表名 to 新表名; 例如在表 MyClass 名字更改为 YouClass mysql> rename table MyClass to YouClass; 更新字段内容 update 表名 set 字段名 = 新内容 update 表名 set 字段名 = replace(字段名,'旧内容','新内容'); 文章前面加入 4 个空格 update article set content=concat(' ',content); 字段类型 1.INT[(M)] 型正常大小整数类型 2.DOUBLE[(M,D)] [ZEROFILL] 型正常大小(双精密)浮点数字类型 3.DATE 日期类型支持的范围是 1000-01-01 到 9999-12-31。
 
  MySQL 以 YYYY-MM-DD 格式来显示 DATE 值但是允许你使用字符串或数字把值赋给 DATE 列 4.CHAR(M) 型定长字符串类型当存储时总是是用空格填满右边到指定的长 度 5.BLOB TEXT 类型最大长度为 65535(2^16-1)个字符。 6.VARCHAR 型变长字符串类型 5.导入数据库表 (1)创建.sql 文件 (2)先产生一个库如 auction.c:mysqlbin>mysqladmin -u root -p creat auction会提示输入密码然后成功创建。 (2)导入 auction.sql 文件 c:mysqlbin>mysql -u root -p auction < auction.sql。 通过以上操作就可以创建了一个数据库 auction 以及其中的一个表 auction 。 6.修改数据库 (1)在 mysql 的表中增加字段 alter table dbname add column userid int(11) not null primary key auto_increment; 这样就在表 dbname 中添加了一个字段 userid类型为 int(11)。
 
  7.mysql 数据库的授权 mysql>grant select,insert,delete,create,drop on *.* (或 test.*/user.*/..) to 用户名@localhost identified by '密码'; 如新建一个用户帐号以便可以访问数据库需要进行如下操作 mysql> grant usage -> ON test.* -> TO testuser@localhost; Query OK, 0 rows affected (0.15 sec) 此后就创建了一个新用户叫testuser这个用户只能从 localhost 连接到数 据库并可以连接到 test 数据库。下一步我们必须指定 testuser 这个用户可以执 行哪些操作 mysql> GRANT select, insert, delete,update-> ON test.* -> TO testuser@localhost; Query OK, 0 rows affected (0.00 sec) 此操作使 testuser 能够在每一个 test 数据库中的表执行 SelectInsert 和 Delete 以及 Update 查询操作。
 
  现在我们结束操作并退出 MySQL 客户程序 mysql> exit Bye9! 1:使用 SHOW 语句找出在服务器上当前存在什么数据库 mysql> SHOW DATABASES; 2:2、创建一个数据库 MYSQLDATA mysql> 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; 1...
 

(编辑:财气旺网 - 财气网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!