mysql对结果进行标识_Mysql操作基础,标记一下

1、MySQL 如何导入导出个别需要数据记录?

– 先导出数据所在的表结构:

mysql> show create table CHARBASE into outfile “/db/mysql/RS.sql” ;

– 将需要单独导出的内容存放在文本文件里,这里一定要注意存放的位置必须是mysql用户有权限的位置:

mysql> select * from CHARBASE order by CHARID desc limit 15 into outfile “/db/mysql/record.sql” ;

– (注意 into outfile 只能用于 select 语句)

– 创建同样的表结构:

mysql> create database test;

mysql> source RS.sql;

– 将文件数据导入新的数据库:

mysql> LOAD DATA INFILE ‘/db/mysql/record.sql’ INTO TABLE CHARBASE;

2、如何导入导出一个表的内容?

– 可以select整个表的内容,用load导入!

– mysqldump

– mysqldump -h127.0.0.1 -uroot -p DBNAME TableName > table.sql

3、如何备份还原整个数据库?

– 备份还原整个MySQL数据库其实是最最简单的一件事情,通常我们不需要任何工具,而是把整个目录拷贝出来即可!(注意,如果是迁移服务器最好把 mysql数据库也一起拷贝过去。)

– 在拷贝完毕之后我们只要将权限做一简单设置即可:

– chown mysql.mysql /db -R

– mysql.server restart

– 也可以用 mysqldump 来备份整个数据库.

– mysqldump -h127.0.0.1 -uroot -p DBNAME > table.sql

4、如何用mysql命令来备份mysql数据库?

– 如果是比较小的mysql数据库,当然也可以将整个数据库备份成一个标准的SQL脚本文件,然后还原.

– mysqldump -h127.0.0.1 -uroot -p test > /db/mysql/test.sql;

– create database test02;

– use test02;

– source /db/mysql/test.sql;

5、如何导出一个数据库结构,但不导出任何数据?

– mysqldump -h127.0.0.1 -uroot -p -d RecordServer > /db/mysql/RecordServer.sql;

6、如何查看数据库、表、表结构、建表、建库SQL脚本?

mysql> show databases;

mysql> show tables;

mysql> desc CHARBASE;

mysql> show create table CHARBASE;

– mysqldump -h127.0.0.1 -uroot -p -d RecordServer > /db/mysql/RecordServer.sql;

7、MySQL里边存放时间和存放IP地址的字段通常都是转换过的写法,请问如何查看他们本来的格式?

mysql> select CHARID,CREATEIP,CREATETIME,MAC,INET_NTOA(CREATEIP)

AS IP,FROM_UNIXTIME(CREATETIME) AS TIME FROM CREATEIP WHERE

CHARID=13566952;

+———-+————+————+—————–+—————-+———————+

| CHARID | CREATEIP | CREATETIME | MAC | IP | TIME |

+———-+————+————+—————–+—————-+———————+

| 13566952 | 2329037786 | 1208804488 | 176940240538368 | 138.210.75.218 | 2008-04-22 03:01:28 |

+———-+————+————+—————–+—————-+———————+

[注意]:这里得出的IP地址是不对的,正确的应该是反向的,比如上边正确的应该是 218.75.210.138 .

8、请举例说明如何在一个表中插入,修改或删除一个字段?

– 在某个字段后插入:

mysql> ALTER TABLE `RELATION` ADD `COUNTRYWARKILL` int(10) unsigned NOT NULL default ‘0′ after `ZEROCLEAR`;

– 在最后一个字段后面插入:

mysql> ALTER TABLE `RELATION` ADD `COUNTRYWARKILL` int(10) unsigned NOT NULL default ‘0′;

– 删除一个字段:

mysql> alter table CHARBASE drop ZONE; 或:

mysql> alter table CHARBASE drop COLUMN ZONE;

– 重命名字段:

mysql> alter table CHARBASE change ZONE ZONE01 integer not null default ‘0′;

– 如何重命名表

mysql> ALTER TABLE CHARBASE RENAME CHARNAME;

9、Linux 终端不支持在 MySQL 命令模式下写中文,如何解决?

– 直接在命令中执行:

mysql -e “use RecordServer;select CHARBASE.NAME,RELATION.COUNTRYWARKILL

FROM CHARBASE,RELATION WHERE CHARBASE.COUNTRY=4 AND CHARBASE.NAME LIKE

‘豪MeN%’”

– 将 update 的更新中文名字的语句写入到文本文件,用source来执行:

mysql> source /db/mysql/test.sql;

– 写成shell脚本执行:

#/bin/bash

mysql -e “use RecordServer;UPDATE RELATION SET NAME=’最不厉害2′ WHERE

CHARID=15292694;UPDATE RELATION SET NAME=’旺角口水文2′ WHERE

CHARID=14771293;”

– 直接执行:

mysql -umysql -p123456 -h192.168.1.50 RecordServer -e “INSERT INTO CHARBASE (ACCID,NAME) VALUES(85164210,’Droney.zhao’);”

10、如何对表进行插入,修改,删除的操作?

– 对表格的插入操作:

mysql> INSERT INTO CHARBASE (ACCID,NAME) VALUES(85164210,’Droney’);

– 清空这个表:

mysql> delete from COUNTRY;

– 删除表中的某些记录:

mysql> DELETE FROM COUNTRY WHERE ID NOT IN(2,3,4,5,6);

mysql> DELETE FROM COUNTRY WHERE NAME = ‘Droney’;

mysql> DELETE FROM COUNTRY WHERE NAME like ‘%三秦浪子%’;

– 更新表中的某些记录:

mysql> UPDATE COUNTRY SET EXP=500 WHERE ID IN(2,3,4,5,6);

11、如何重命名表?

mysql> ALTER TABLE CHARBASE RENAME CHARNAME;

12、怎么查询字段值为1的记录中相同用户的个数,只将拥有这样的记录的个数 >9 的字段显示出来?

SELECT CHARID,COUNT(*) FROM FRIEND WHERE WHICH=1 GROUP BY CHARID HAVING COUNT(WHICH)>9;

13、如何修改mysql用户密码?

mysql> use mysql;

mysql> update user set password=password(‘123456′) where user=’mysql’;

mysql> FLUSH PRIVILEGES;

或者:

mysqladmin -h192.168.1.1 -uusername -poldpassword password newpassword

– 如何添加、删除一个MySQL用户?

– 可以用以下方法添加,建议还是用上边设置权限的方式去添加新的用户.

mysql> INSERT INTO `user` VALUES (‘192.168.76.250′, ‘Droney’,

PASSWORD( ‘123456′ ) , ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’,

‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ”, ”, ”, ”, ‘0′,

‘0′, ‘0′);

mysql> FLUSH PRIVILEGES;

14、mysql用户密码忘记或者IP限制登录怎么办?

– 需要重新初始化数据库.

su – dbadmin -c “/usr/local/mysql/bin/mysql_db_install”

mv /db/mysql/mysql /db/mysql/mysql_bak && /usr/local/mysql/bin/mysql_db_install

chown mysql.mysql /db/ -R && mysql.server restart

15、如何查看mysql数据库编码?

mysql> show variables like ‘character_set_%’;

16、如何建立一个表,并插入一条记录?

mysql> CREATE TABLE `SERVERLIST` (

`ID` int(10) unsigned NOT NULL auto_increment,

`NAME` varchar(32) NOT NULL default ”,

PRIMARY KEY (`ID`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

mysql> INSERT INTO `SERVERLIST` VALUES (1,’Droney’);

17、如何为MySQL设置访问权限?

– 下面设置了只允许 192.168.1.0 网段连接,且添加dbadmin用户,密码123456,并删除所有密码为空的mysql用户.

mysql> GRANT ALL PRIVILEGES ON *.* TO dbadmin@’192.168.1.%’ IDENTIFIED BY ‘123456′ WITH GRANT OPTION;

mysql> delete from mysql.user where password=”";

mysql> flush privileges;

– 其他设置示范:

mysql> grant all on *.* to dbadmin@localhost identified by ‘password’;

mysql> grant all on dbname.* to dbadmin@% identified by ‘password’;

mysql> grant select,insert on dbname.tablename to dbadmin@192.168.1.% identified by ‘password’;

18、如何添加、删除一个MySQL用户?

– 可以用以下方法添加,建议还是用上边设置权限的方式去添加新的用户.

mysql> INSERT INTO `user` VALUES (‘192.168.76.250′, ‘Droney’,

PASSWORD( ‘123456′ ) , ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’,

‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ”, ”, ”, ”, ‘0′,

‘0′, ‘0′);

mysql> FLUSH PRIVILEGES;

19、如果用mysqldump导出的数据出现了乱码怎么办?

iconv -c -f UTF-8 -t GB2312 库文件名 > 新的库文件名

20、忘记了mysql 密码,我不想重新初始mysql数据库,我该怎么办?

– 杀掉原来mysql进程,用如下命令来启动mysql,这样mysql就可以不需要密码,也没有IP限制的轻松登陆了!

mysql> /usr/local/mysql/bin/mysqld_safe –skip-grant-tables &

21、如何查看mysql建立的线程:

mysql> show processlist;

22、其它常用语句:

mysql> status 可以查看mysql的状态信息

mysql> tee history.txt 以后在mysql中操作的所有指令将被存储在history.txt文件中;

mysql> notee; 取消将指令存入文件的操作;

mysql> system clear; 可以在mysql shell下临时调用系统命令对系统文件进行操作;

– 备份整个数据库(用cp要简单快捷一些)

mysqldump -h192.168.1.1 -uroot -p SuperServer > /SuperServer.sql;

– 导出整个数据库结构

mysqldump -h192.168.1.1 -uroot -p -d SuperServer > /SuperServer.sql;

– 导出表结构

mysql> show create table CHARBASE;

– 导出表结构及内容

mysqldump -h192.168.1.1 -uroot -p -d SuperServer CHARBASE > /SuperServer.sql;

– 导出建表结构的脚本

mysql> show create table CHARBASE;

– 将查询的结果直接保存到文件

mysql> select * from mysql.user into outfile ‘aaa.sql’;

23 修改表结构:

– 创建字段 NAME51 ,将该字段的位置移至 DSTZONE 之后

SQL> ALTER TABLE `CHARBASE` add `NAME51` varchar(33) NOT NULL default ”;

SQL> ALTER TABLE `CHARBASE` change `NAME51` `NAME51` varchar(33) NOT NULL default ” AFTER `DSTZONE`;

24 创建索引:

create index ID on TEMP(CHARID);

25 高级查询:

CREATE TABLE `C` (

`ID` varchar(100) NOT NULL default ”,

`NAME` varchar(100) NOT NULL default ”

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

update A,B set B.ID=A.ID where A.name=B.name;

insert into B(ID,NAME) select ID,NAME from A;

insert into B(ID,NAME,AGE) select ID,NAME,25 from A;

insert into C(NAME) VALUES (‘zhaohang’),(‘zhouzhou’),(‘xiaoxiao’);

26 设置自增字段的自增起始值:

Alter tableName auto_increment = 4000;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值