您的位置:首页 > 博客中心 > 数据库 >

mysql一些常用命令总结

时间:2022-03-14 15:40

mysql时间戳转日期格式
SELECT FROM_UNIXTIME(add_time,‘%Y-%m-%d %H:%i:%s‘) FROM `wh5_username` where id=23;

显示进程
show processlist

连接数据库
mysql -uroot -pPwd.Secret -S /data/mysql/mysql_3306.sock

删除数据表
truncate table 表名

创建数据库带默认字符集
CREATE DATABASE `test2` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

给某个数据库新增数据库用户名密码
grant all on `数据库名`.* to ‘用户名‘@localhost identified by ‘密码‘;

远程授权例子:
grant all privileges on test.* to test@‘127.41.93.243‘ identified by ‘1234567‘;

删除用户
use mysql
Delete FROM user Where User=‘test‘ and Host=‘localhost‘;

sql导入
source test.sql

修改递增的值
alter table users AUTO_INCREMENT=0;

修改字段
ALTER TABLE chatter_users MODIFY COLUMN ip VARCHAR(50);

修改字段名
ALTER TABLE `test_user` CHANGE `uc_uid` `type` tinyint(1) unsigned NOT NULL DEFAULT ‘0‘;

sql导出
只导出表结构
mysqldump -uroot -pdbpasswd -d dbname test>db.sql;
导出表结构和数据
mysqldump -uroot -pdbpasswd dbname test>db.sql;
eg:漫画导出语句
mysqldump -uroot -pPwd.Secret -h127.0.0.1 yaoyao_test>yaoyao_test20140415.sql;

允许客户端连接mysql操作
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE ON `Test_App`.* TO ‘MANHUA_APP‘@‘214.247.214.90‘ identified by "jIhQle/Mu2O";
重新授权了一下,改了一下iptables


复制表数据和表结构
第一中方法:
复制整个表
CREATE TABLE new_table SELECT * FROM old_table;

复制但不复制数据
CREATE TABLE new_table SELECT * FROM old_table where 0;
以上方法存在问题: 其实只是把select语句的结果建一个表。所以new_table这个表不会有主键、索引。
可以用一下方法改进:
create table new_table(id int(20) not null auto_increment primary key) select * from old_table
这个SQL语句可以实现复制基本结构、表的主键和自动增长,这里new_table的id会自动覆盖old_table的id定义格式

第二种方法:
将 production 数据库中的 mytbl 表快速复制为 mytbl_new,2个命令如下:
CREATE TABLE mytbl_new LIKE production.mytbl;
INSERT mytbl_new SELECT * FROM production.mytbl;
第一个命令是创建新的数据表 mytbl_new ,并复制 mytbl 的数据表结构。
第二个命令是讲数据表 mytbl 中的数据复制到新表 mytbl_new 。
注:production.mytbl是指定要复制表的数据库名称为 production 。它是可选的。
假如没有production. ,MySQL数据库将会假设mytbl在当前操作的数据库。

 

我用的SecureCRT用的utf-8编码,终端时LANG=en_US.UTF-8, 而经过苏普同学提醒,这条记录的字条应该是utf-8!
那么强制在mysql命令行里设置utf-8而不用默认的gbk。
SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=28
msyql编码问题参考网址http://blog.chinaunix.net/uid-20677742-id-3133356.html


mysql导出部分指定列数据
SELECT field1,field2 FROM mytable INTO OUTFILE ‘/backup/outfile.txt‘;

mysql查找替换sql写法
UPDATE `m_chapter_0` SET `pics` = replace (`pics`,‘test.jide123.cc:8080‘,‘test.jide123.cc‘)
UPDATE `test_ecms_news_data_1` SET `surl` = replace (`surl`,‘vdata.test.org‘,‘test.yaoyao.org‘);

本类排行

今日推荐

热门手游