一些关于命令行的随笔

最近喜欢上了命令行。
用的软件不是windows模拟dos的cmd哦,我用的是cmder

关于数据库

在命令行打开mysql的方法:首先在cmd命令行中输入“net start mysql”;然后输入“mysql -h localhost -u root -p”,回车;最后输入mysql的账号密码,回车即可打开mysql数据库。

-h 指出服务器名 localhost是指本机 -u 指出用户名 root是默认的最高权限用户名 -p指出密码
很简单对不对,那试一试吧。咦,为什么报错了?

一、错误描述

我们可能有时候需要通过 Windows 命令提示符来启动 MySQL 服务,但是如果你不注意的话,可能就会报以下错误。现在我们来解决这个问题。

net start mysql 发生系统错误 5。 拒绝访问。

二、错误产生场景

我们在此复习一下操作命令,MySQL 服务的启动、停止与卸载,在 Windows 命令提示符下运行:

  • 启动:net start MySQL
  • 停止:net stop MySQL
  • 卸载:sc delete MySQL

三、产生错误原因

MySQL 服务是安装到本地系统内的,是属于系统的变量信息,而如果我们直接 cmd 进入 Windows 命令提示符下启动 MySQL 服务,是属于当前用户进行操作的,很明显权限不够,所以我们需要以管理员身份启动 MySQL 服务。

四、解决方式

我们以管理员身份运行命令提示符。问题解决,成功启动。
image

解决了,是不是很简单
image

下面是关于数据库的一些简单命令,这些都很简单,学过数据库导论的都应该知道了。复习一下吧。
1.show databases; //展示数据库

RESULT:

+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)

2.use test; //进入test库

RESULT:

Database changed

3.show tables; // 查看test库内的表

RESULT:
Empty set (0.00 sec) //表是空的

4.show tables from mysql; //查看mysql库内的表(还在test库内)

RESULT:
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| event |
| func |
| general_log |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| host |
| ndb_binlog_index |
| plugin |
| proc |
| procs_priv |
| proxies_priv |
| servers |
| slow_log |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+---------------------------+
24 rows in set (0.00 sec)

5.select database(); //查看当前所在的库

RESULT:

+------------+
| database() |
+------------+
| test |
+------------+
1 row in set (0.00 sec)

6.create table StuInfo(
id int,
name varchar(20)); //创建一个名为StuInfo的表

mysql> create table StuInfo(
-> id int,
-> name varchar(20));
Query OK, 0 rows affected (0.00 sec)

mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| stuinfo |
+----------------+
1 row in set (0.00 sec)

7.mysql> desc StuInfo; //查看创建的表
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.01 sec)

8.mysql> select * from StuInfo; //查看表中的数据
Empty set (0.00 sec)

  1. //插入数据
    mysql> insert into StuInfo (id,name) values(1,'John');
    Query OK, 1 row affected (0.00 sec)

mysql> insert into StuInfo (id,name) values(2,'Rose');
Query OK, 1 row affected (0.01 sec)

//查看表中的数据
mysql> select * from StuInfo;
+------+------+
| id | name |
+------+------+
| 1 | John |
| 2 | Rose |
+------+------+
2 rows in set (0.00 sec)

10.//更新id = 1 的 name 的 数据
mysql> update StuInfo set name = 'lilei' where id = 1;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

//查看表中的数据
mysql> select * from StuInfo ;
+------+-------+
| id | name |
+------+-------+
| 1 | lilei |
| 2 | Rose |
+------+-------+
2 rows in set (0.00 sec)

11.//删除 id = 1 的 数据
mysql> delete from StuInfo where id = 1;
Query OK, 1 row affected (0.01 sec)

mysql> select * from StuInfo;
+------+------+
| id | name |
+------+------+
| 2 | Rose |
+------+------+
1 row in set (0.00 sec)

接下来往reggie这个数据库中导入数据
注意,尽量不要使用包含中文的路径
image
如果因编码格式造成乱码,以下是解决方案:
image
set names utf8;

posted @ 2022-11-23 15:52  Galaxy不写bug  阅读(43)  评论(0编辑  收藏  举报