服务器 频道

mysql 技巧总结

  【IT168 服务器学院】1.修改mysql中root的密码:
  shell>mysql -u root -p
  mysql>SET PASSWORD FOR root=PASSWORD("root");

  2.远程登录mysql server:(当然server必须首先给某个远程用户授权了)
  shell>mysql -h host -u user -p

  3.打开数据库:use dbname;
  显示所有数据库:show databases;
  显示数据库mysql中所有的表:先use mysql;然后show tables;
  显示表的列信息:describe user;(显示表mysql数据库中user表的信息);

  4.创建一个可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令something做这个
  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;

  5.删除授权:
  REVOKE ALL PRIVILEGES ON *.* FROM root@"%";
  USE mysql;
  DELETE FROM user WHERE User="root" and Host="%";
  FLUSH PRIVILEGES;

  6. 创建一个用户custom在特定客户端weiqiong.com登录,可访问特定数据库bankaccount
  mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON bankaccount.*
  TO custom@weiqiong.com IDENTIFIED BY ''stupid'';

  7.重命名表:
  ALTER TABLE t1 RENAME t2;

  为了改变列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);

  删除列c:
  ALTER TABLE t2 DROP COLUMN c;

  增加一个新的AUTO_INCREMENT整数列,命名为c:
  ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c);
  注意,我们索引了c,因为AUTO_INCREMENT柱必须被索引,并且另外我们声明c为NOT NULL,
  因为索引了的列不能是NULL。

  8.删除记录:
  DELETE FROM t1 WHERE C>10;

  6.改变某几行:
  UPDATE t1 SET user=weiqiong,password=weiqiong;

  7.使用name列的头10个字符创建一个索引:
  CREATE INDEX part_of_name ON customer (name(10));

   

0
相关文章