MySQL

MySQL是一个关系型数据库管理系统,是后端常用的数据库系统,MySQL是开源的,可以免费下载使用。

MySQL数据库安装

MySQL安装、服务命令

安装MySQL服务器

1
apt install mysql-server

启动MySQL服务

1
systemctl start mysqld 

1
service mysql start

重启MySQL服务

1
service mysql restart

停止MySQL服务

1
service mysql stop

显示MySQL状态

1
service mysql status

设置MySQL服务开机自启动

1
service mysql enable

进入数据库

1
mysql [-h <主机ip>] -u root -p 

退出

1
exit

配置MySQL远程登录

修改/etc/mysql/mysql.conf.d/mysqld.cnf配置文件。

打开配置文件,找到bind-address = 127.0.0.1这一行,改为bind-address = 0.0.0.0即可或注释掉

修改完成保存后,需要重启MySQL服务才会生效

MySQL默认端口3306

配置MySQL

运行MySQL初始化安全脚本

1
mysql_secure_installation

脚本报错

错误样例

… Failed! Error: SET PASSWORD has no significance for user ‘root‘@’localhost’ as the authentication method used doesn’t store authentication data in the MySQL server. Please consider using ALTER USER instead if you want to change authentication parameters.

更正方法

1
use mysql;
1
2
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'Mysql.123';
flush privileges;

常用SQL命令

展示所有数据库

1
show databases;

使用数据库

1
use <数据库名称>;

展示当前数据库所有表

1
shwo tables;

展示表结构

1
desc <表名称>;

Docker创建MySQL容器

1
docker run --name <MySQL容器名称> -e MYSQL_ROOT_PASSWORD=<Mysql密码> -d -p 3306:3306 mysql

MySQL数据库导入导出

MySQL数据库导出数据和表结构

1
mysqldump -u <用户名> -p <密码> <数据库名> > <数据库名>.sql

MySQL数据库导出表结构

1
mysqldump -u <用户名> -p <密码> -d <数据库名> > <数据库名>.sql

MySQL数据库导入.sql文件

1
mysql -u <用户名> -p <密码> <数据库名> < <数据库名>.sql

数据库中命令方式导入

选择数据库

1
use <数据库名称>;

导入数据(注意sql文件的路径)

1
source <sql文件路径>;