mysql-5.1使用

Posted Covers

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql-5.1使用相关的知识,希望对你有一定的参考价值。

1. /usr/local/mysql/bin/mysqld_safe & (启动)

2. lsof -i :3306

3. mysql -uroot -p\'chengye123\' 单实例登录

4. mysql -uroot -p\'chengye123\' -S /data/3306/mysql.sock (多实例登录)

5. ;or \\g 结束mysql语句  \\h 查看帮助 不区分大小写

6. show databases; 查看数据库

7. mysqladmin -uroot password \'211570xcy\'  单实例设置密码

8. mysqladmin -uroot password \'211570xcy’ -S /data/3306/mysql.sock 多实例设置密码

9. 修改密码 mysqladmin -uroot -p\'211570xcy\' password \'chengye123\'

10. mysqladmin -uroot -p’chengye123’ password \'211570xcy’ -S /data/3306/mysql.sock

11. Update mysql.user set password=password("211570xcy") where user=\'root\' and host="localhost";

flush privileges;  在mysql中修改密码

12. set password=password(\'chengye123\');

flush privileges;

13. 找回丢失的mysql 密码

killall mysqld

mysqld_safe --skip-grant-tables &    在后台无密码启动

mysql

Update mysql.user set password=password("211570xcy") where user=\'root\' and host="localhost";

flush privileges;

14. 多实例

killall mysqld

mysqld_safe --defaults-file=/data/3306/my.cnf --skip-grant-tables &

Update mysql.user set password=password("211570xcy") where user=\'root\' and host="localhost";

flush privileges;

15. SQL结构化查询(6个部分)

数据查询语言(DQL)----select

数据操作语言(DML)---Insert/update/delete

事物处理语言(TPL)----Transaction/commit/roolback

数据控制语言(DCL)----grant/revoke

数据定义语言(DDL)---create/drop

指针控制语言(CCL)----declare cursor/fetch into/update where current

16. create database chengye;  创建数据库

17. show databases like \'chengye%\'; 查看

18. show create database chengye; 查看建表语句

  1. 19.  create database chengye_gbk default character set gbk collate gbk_chinese_ci; 建一个名为chengye_gbk的GBK字符集数据库

字符集  校对规则

20. create database chengye_utf8 character set utf8 collate utf8_general_ci; 建一个名为chengye_utf8的utf8字符集数据库

字符集是用来定义mysql字符串的存储方式;mysql字符集包括字符集(character)和校对规则(collation)

21. drop database if exists chengye; 删除数据库

22. select user(); 查看当前用户 select database();连接数据库

use chengye_gbk; 进入库中 select version(); 查看mysql版本

show tables from chengye_gbk;查看库中的表

drop user \'\'@\'localhost\';  删除多余系统账号、

select user,host from mysql.user; 查看

delete from mysql.user where user=\'root\' and host=\'localhost\';

23. 创建用户,再进行授权

create user chengye@\'localhost\' identified by \'chengye123\';

select user from mysql.user;  查看用户

show grants for chengye@\'localhost\';  查看用户权限,默认USAGE

grant all on chengye_gbk.* to chengye@\'localhost\'; 把库的所有权限赋予  flush privileges;   show grants for chengye@\'localhost\';

24. grant all on chengye_utf8.* to chengye@\'localhost\' identified by \'211570xcy\';直接授权

25. 远程连接另外一台的数据库失败

26. revoke insert on chengye_gbk.* from chengye@\'localhost\'; 收回权限

27. 生产环境授权:grant select,insert,update,delete,create,drop on chengye_gbk.* to chengye@\'192.168.1.%\' identified by \'211570xcy\';

28. 例:create database blog default character set gbk collate gbk_chinese_ci;

use blog    select database(); 

建表 create table 表明(

      字段名  类型(长度)  [约束],

      字段名  类型(长度)  [约束]

      );

create table test(

    -> uid int(32) primary key auto_increment,

    -> uname varchar(32)

-> );

show tables from blog;

show create table test\\g

Mysql-5.1 默认ENGINE=MYISAM DEFAULT CHARSET=gbk 引擎

Mysql-5.5 默认ENGINE=InnoDB DEFAULT CHARSET=gbk

mysql 字段类型:1. INT(正常大小整数类型) 2. DOUBLE(正常大小浮点数类型)  3.DATE(日期类型)  4. CHAR(定长字符串类型) 5. BLOB TEXT

6. VARCHAR型(变长字符串类型)

29. 建立Student表: create table student(

    -> Sno int(10) NOT NULL COMMENT \'xuehao\',

    -> Sname Varchar(16) NOT NULL COMMENT \'xingming\',

    -> Ssex char(2) NOT NULL COMMENT \'xingbie\',

    -> Sage tinyint(2) NOT NULL default \'0\' COMMENT \'nianling\',

    -> Sdept varchar(16) default NULL COMMENT \'xibie\',

    -> PRIMARY KEY (Sno),

    -> KEY index_Sname (Sname)

-> ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

30. show tables;   desc student;查看表结构 drop table test; 删除表

31. 每个表只有一个主键,但是可以有多个索引,主键要求列的唯一性,索引不要求唯一

32. 建表时创建索引create table test(

    -> id int(4) not null primary key auto_increment,  常主键 自增

    -> name char(20) not null,

    -> KEY `index_name` (`name`)    索引  索引名称内容

    -> );

show index from test;  desc test;

33. alter table test drop index index_name; 删除索引

show index from test;

34. 建表后添加索引 alter table test add index INDEX_name(name);

create INDEX INDEX_name on test(name); 不能创建主键索引

35. 删除主键:非自增列 alter table test drop PRIMARY KEY;

若有自增列不能删,建表时去掉 PRIMARY KEY auto_increment

36. 表操作:索引可以加快查询速度,若建索引多,更新数据库还要维护,尽量选择在唯一值多的大表上建索引,小表上不要建索引

use chengye_gbk

create table test(

    -> id int(4) not null primary key auto_increment,

    -> name char(20) not null,

    -> KEY `index_name` (`name`)

    -> );

insert into test(id,name) values(001,\'chengye\'); 插入数据

select * from test; 查看数据
insert into test values (4,\'evan\'),(5,\'jiangfang\'); 批量插入

select * from test limit 2;  查询两行

select * from test order by id limit 0,3; 排序输出

select * from test where id=4;  指定ID

select * from test where name=\'jiangfang\';

select * from test where id>3 and id<5;  选择性输出

37. use blog

set names gbk;

insert into student values(0001,\'chengye\',\'nian\',24,\'jisuanji\');

select * from student;

select Sname,sum(grade) from sc a,student b where a.Sno=b.Sno group by Sname; 查看每个学生所修学分的总和

explain select * from test where id=6\\g 查看有无走索引

update test set name=\'gaigai\' where id=1; 修改数据

mysqldump -uroot -p’211570xcy’ -B chengye_gbk >/mnt/tmp.sql 备份

egrep -v “\\-|\\*|^$” /mnt/tmp.sql

mysql -uroot -p’211570xcy’ </mnt/tmp.sql  还原数据

update test set id=100 where name=\'evan\';

delete from test where id=100;  删除表中数据

truncate table test;  清空表

38. 在表中增删改desc test;

alter table test add sex char(4); 添加性别列

alter table test add age int(4) after name;  指定位置加入

39. 更改表名rename table test to chengye;

alter table chengye rename to test;

drop table test;  删除表

 

以上是关于mysql-5.1使用的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 5.1安装和配置过程中遇到的问题

Centos 6.* 下面安装mysql 5.1

与 MySQL 5.1 的 ODBC 连接

我应该为 Spring 3.1.0、Hibernate 4.0.1.Final 和 MySQL 5.1 使用啥池数据源?

mysql 5.1 升级 mysql 5.7 升级 mariadb10

mysql 5.1乱码问题怎么整?