MySQL 的第一步

网友投稿 813 2023-04-09

MySQL 的第一步

MySQL 的第一步

在本章中,我们将使用 MySQL 迈出第一步。 我们将启动服务器,使用客户端工具连接到服务器,创建新用户并发布第一个 SQL 语句。

启动/停止 MySQL 服务器

MySQL 服务器是在后台运行的守护程序。 启动 MySQL 的方式取决于您的系统和完成的安装类型。

$ sudo /etc/init.d/mysqld start$ sudo /etc/init.d/mysqld stop

在基于传统 init 的系统上,我们将使用上述命令来启动和停止 MySQL 服务器。

$ sudo service mysql start$ sudo service mysql stop

Debian 已迁移到 Upstart,这是一个基于事件的守护程序,用于启动任务和服务并进行监督。 在使用 Upstart 的系统上,我们将使用上述命令启动和停止 MySQL 服务器。

$ sudo /usr/local/mysql/support-files/mysql.server start$ sudo /usr/local/mysql/support-files/mysql.server stop

如果从源代码安装了 MySQL,则可以使用mysql.server命令启动和停止 MySQL。

检查 MySQL 状态

我们将展示如何检查 MySQL 服务器的状态。

$ service mysql status● mysql.service - MySQL Community Server   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)   Active: active (running) since Pi 2017-01-27 16:32:12 CET; 2h 7min ago Main PID: 9439 (mysqld)   CGroup: /system.slice/mysql.service           └─9439 /usr/sbin/mysqldjan 27 16:32:10 t400 systemd[1]: Starting MySQL Community Server...jan 27 16:32:12 t400 systemd[1]: Started MySQL Community Server.jan 27 16:32:26 t400 systemd[1]: Started MySQL Community Server.

我们使用service mysql status命令检查状态。

$ mysqladmin -u root -p pingEnter password: mysqld is alive

我们使用mysqladmin工具检查 MySQL 服务器是否正在运行。 -u选项指定对服务器执行 ping 操作的用户。 -p选项是用户的密码。 如果省略密码,则mysqladmin提示输入一个。 在提示符后键入的字符不可见。 这是用于mysqladmin的更安全的解决方案。 这样,任何人都不会看到您键入的密码,并且该密码不会存储在外壳程序的历史记录中。

mysqladmin 工具

mysqladmin是用于执行管理操作的客户端。

$ mysqladmin -uroot -p shutdown

我们使用mysqladmin工具关闭 MySQL 服务器。

$ mysqladmin -u root -p versionEnter password: ...Server version          5.7.17-0ubuntu0.16.04.1Protocol version        10Connection              Localhost via UNIX socketUNIX socket             /var/run/mysqld/mysqld.sockUptime:                 45 sec...

我们使用mysqladmin检查 MySQL 服务器的版本。

$ mysqladmin -u root -p create testdb

可以使用mysqladmin创建数据库

$ mysqladmin -u root -p drop testdb

此命令删除数据库。

$ mysqladmin -u root -p password Enter password: New password: Confirm new password: 

我们可以使用mysqladmin更改用户密码。 我们输入旧密码,然后输入两次新密码。

mysql 工具

mysql是 MySQL 命令行工具。 这是一个简单的外壳。 它支持交互和非交互使用。

我们使用mysql工具连接到服务器。 请注意,我们在-p选项之后省略了密码。 我们在“输入密码” 提示符后键入密码。

mysql命令行工具以mysql>作为提示符。 在此提示下,我们可以发出mysql内置命令和 SQL 语句。 我们需要熟悉mysql工具。 Ctrl + L清除屏幕,Ctrl + D或quit命令退出mysql。 我们需要区分mysql命令和 SQL 语句。 SQL 语句以分号终止。

键入 help 以获得mysql命令的完整列表。

mysql> system pwd/home/janbodnar

system命令可以执行 Shell 命令。 我们已经启动了pwd命令来查找当前的工作目录。

mysql> quitBye

quit命令终止mysql Shell。

$ mysql --versionmysql  Ver 14.14 Distrib 5.7.17, for Linux (x86_64) using  EditLine wrapper

mysql也可以非交互方式使用。 在这里,我们获得了该工具的版本。

建立数据库

现在,我们将创建数据库。

mysql> SHOW DATABASES;+--------------------+| Database           |+--------------------+| information_schema || mysql              || performance_schema || sys                |+--------------------+4 rows in set (0,00 sec)

SHOW DATABASES语句显示我们系统上的所有可用数据库。 请注意,SQL 语句以分号终止。 存在四个数据库。 information_schema,mysql和performance_schema是 MySQL 系统数据库。 sys是用于调整和诊断用例的一组架构对象。 尚无用户定义的数据库。

mysql> CREATE DATABASE mydb;Query OK, 1 row affected (0,00 sec)

该语句创建一个新的数据库。 在整个教程中,我们将使用mydb数据库。 要创建新数据库,我们需要具有某些特权。 请记住,我们已经以 root 用户(超级用户并具有所有特权)连接到服务器。

mysql> SHOW DATABASES;+--------------------+| Database           |+--------------------+| information_schema || mydb               || mysql              || performance_schema || sys                |+--------------------+5 rows in set (0,00 sec)

显示所有数据库,其中有mydb数据库。

mysql> USE mydb;Database changed

为了使用数据库,我们必须首先选择它。 我们使用USE命令选择一个特定的数据库。

mysql> SHOW TABLES;Empty set (0.00 sec)

SHOW TABLES语句显示数据库中所有可用的表。 由于它是新创建的数据库,因此找不到表。

mysql> source cars.sqlDatabase changedQuery OK, 0 rows affected (0.20 sec)Query OK, 1 row affected (0.08 sec)...

在第一章中,我们提供了一些 SQL 脚本来创建一些表。 我们使用 source 命令执行cars.sql脚本,该脚本为我们创建了Cars表。

mysql> SHOW TABLES;+----------------+| Tables_in_mydb |+----------------+| Cars           |+----------------+1 row in set (0,00 sec)

现在SHOW TABLES语句显示一个可用表。

mysql> SELECT * FROM Cars;+----+------------+--------+| Id | Name       | Cost   |+----+------------+--------+|  1 | Audi       |  52642 ||  2 | Mercedes   |  57127 ||  3 | Skoda      |   9000 ||  4 | Volvo      |  29000 ||  5 | Bentley    | 350000 ||  6 | Citroen    |  21000 ||  7 | Hummer     |  41400 ||  8 | Volkswagen |  21600 |+----+------------+--------+8 rows in set (0,00 sec)

这就是表中的数据。

创建一个新用户

与 Unix 根帐户类似,建议不要在日常工作中使用 MySQL 超级用户根帐户。 我们仅在必要时才使用 root 帐户。 我们创建一个将要使用的新帐户。 该用户将具有有限的权限。 使用 root 用户时,我们可能会意外地对我们的数据造成很多损害。

mysql> CREATE USER user12@localhost IDENTIFIED BY '34klq*';

上面的命令创建一个名为user12的新用户。 帐户具有密码34klq*。 用户已创建,但没有特权。

mysql> GRANT ALL ON mydb.* TO user12@localhost;

该语句为mydb数据库上的所有数据库对象授予user12所有特权。 这些特权足以满足本教程中的示例要求。

mysql> quitBye$ mysql -u user12 -p

现在,我们可以使用新的用户帐户连接到 MySQL。

$ mysql -u user12 -p mydb -e "SELECT * FROM Cars"Enter password: +----+------------+--------+| Id | Name       | Cost   |+----+------------+--------+|  1 | Audi       |  52642 ||  2 | Mercedes   |  57127 ||  3 | Skoda      |   9000 ||  4 | Volvo      |  29000 ||  5 | Bentley    | 350000 ||  6 | Citroen    |  21000 ||  7 | Hummer     |  41400 ||  8 | Volkswagen |  21600 |+----+------------+--------+

我们非交互地连接到mydb数据库并执行一条 SQL 语句。 在-e选项之后指定要执行的语句。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:MySQL 快速教程
下一篇:MySQL 安装
相关文章