MySQL 面试系列:MySQL 命令和内置函数

其它MySQL 面试系列:

MySQL 面试系列:MySQL查询如何进行优化?

MySQL 面试系列:一条select语句在MySQL是这样执行的?
MySQL 面试系列:MySQL 常见的开放性问题
MySQL 面试系列:MySQL 性能优化 & 分布式

MySQL 面试系列:MySQL 命令和内置函数
MySQL 面试系列:MySQL 中日志的面试题总结
MySQL 面试系列:MySQL 中锁的面试题总结

MySQL 面试系列:MySQL 事务的面试题总结
MySQL 面试系列:MySQL 索引的面试题总结
MySQL 面试系列:MySQL 基础模块的面试题总结


如何用命令行方式连接 MySQL 数据库?

使用 mysql -u用户名 -p密码; 输入用户名和密码就可以正常进入数据库连接了,实例如下:

mysql -uroot -p123456;

其中,用户名为 root,密码为 123456。

关于命令 mysql -h 127.0.0.1 -uroot -P 3307 -p3307 以下说法错误的是?

A.-h 和 -P 可以省略 B.-u 和用户名之间不能有空格 C.-p 和密码之间不能用空格 D.小写 -p 对应的是用户密码,大写 -P 对应的是 MySQL 服务器的端口

答:B 题目解析:-p 和密码之间不能用空格,否则空格会被识别为密码的一部分,提示密码错误。-u 和用户名之间可以有空格。

如何创建用户?并给用户授权?

创建用户使用关键字:CREATE USER ,授权使用关键字: GRANT ,具体实现脚本如下:

-- 创建用户 laowang
create user 'laowang'@'localhost' identified by '123456';
-- 授权 test 数据库给 laowang
grant all on test.* to 'laowang'@'localhost'

如何修改 MySQL 密码?

使用如下命令,修改密码:

mysqladmin -u用户名 -p旧密码 password 新密码;

注意:刚开始 root 没有密码,所以 -p 旧密码一项就可以省略了。

如何使用 SQL 创建数据库,并设置数据库的编码格式?

创建数据库可使用关键字: CREATE DATABASE ,设置编码格式使用关键字: CHARSET ,具体 SQL 如下:

create database learndb default charset utf8 collate utf8_general_ci;

如何修改数据库、表的编码格式?

使用 alter 关键字设置库或表的编码格式即可,具体代码如下:

mysql> alter database dbname default character set utf8; mysql> alter table t default character set utf8;

如何使用 SQL 创建表?

创建表的 SQL 如下:

create table t( tid int not null autoincrement, tname char(50) not null, tage int null default 18, primary key(t_id) )engine=innodb;

其中:

  • auto_increment:表示自增;
  • primary key:用于指定主键;
  • engine:用于指定表的引擎。

在 MySQL 命令行中如何查看表结构信息?

使用 desc 表名 查看表结构信息,示例信息如下:

avatar

使用 desc person; 查看表 person 的结构信息。

如何使用 SQL 查看已知表的建表脚本?

查看已知表的建表脚本,命令如下:

mysql> show create table 表名;

效果如下图所示:

avatar

如何使用 SQL 语句更新表结构?

更新表结构信息可以使用 alter table 子句,如,为表增加一列的脚本如下:alter

alter table t add name char(20);

如果要重命名表名,使用如下命令:

rename table new_t to t;

MySQL 有哪些删除方式?有什么区别?

MySQL 有三种删除方式: 1)删除表数据:

delete from t;

2)删除数据,保留表结构:

truncate table t;

3)删数据和表结构:

drop table t;

它们的区别如下:

  • delete 可以有条件的删除,也可以回滚数据,删除数据时进行两个动作:删除与备份,所以速度很慢;
  • truncate 删除所有数据,无条件选择删除,不可回滚,保留表结构;
  • drop:删除数据和表结构 删除速度最快。

如何开启和关闭 MySQL 服务?

使用 systemctl stop mysqld 停止 MySQL 服务,使用 systemctl start mysqld 启动 MySQL 服务。

如何查询当前 MySQL 安装的版本号?

使用 SELECT VERSION(); 可以查询当前连接的 MySQL 的版本号。

如何查看某张表的存储引擎?

可使用 show table status from db where name='t'; 查询数据库 db 中表 t 的所有信息,其中 Engine 列表示表 t 使用的存储引擎,如下图所示:

你可能感兴趣的:(MySQL 面试系列:MySQL 命令和内置函数)