第九周学习日报

笔记来自云上贵猪的博客:a-hxin.cn

MySQL服务:

配置MySLQ环境变量:

通过配置PATH环境变量,这样可以在任何未知直接使用命令行进行启动MySQL服务登录MySQL服务器

环境变量格式:

export PATH=$PATH:路径

我当前MySQL的安装目录为:/opt/soft/mysql-8.0.32/bin/

使用vi或vim修改~/.bash_profile:

vi ~/.bash_profile                //使用vi命令打开编辑
export PATH=$PATH:/opt/soft/mysql-8.0.32/bin/        //在文件末端添加
source ~/.bash_profile        //使其立即生效

使用vi或vim修改/etc/profile:

vi /etc/profile                    //使用vi命令打开编辑
export PATH=$PATH:/opt/soft/mysql-8.0.32/bin/        //在文件末端添加
source /etc/profile            //使其立即生效

测试,在任何位置都能启动MySQL服务和登录MySQL:

登录MySQL:

用法:

mysql -u 用户名 -p

将数据文件导入到 MySQL 数据库中:

例如我在mysql中有个lib中有个profession

创建一个专门存放上传数据的目录:

mkdir -p /opt/upfile                //创建文件
chmod 755 /opt/upfile        //授权

/etc/my.cnf 添加如下命令:

secure-file-priv=""

重启Mysql服务:

service mysql restart

在MySQL,查看本地文本插入功能启动成功没:

show variables like '%local_infile%'; 

# 若没启动改为启动
SET GLOBAL local_infile = 1;

从文件导入数据到表中:

load data infile '文件位置' into table 导入到什么表 fields terminated by '\t';

load data infile '/opt/upfile/data.txt' into table profession fields terminated by '\t';

查看表数据:

select * from 表名;

备份数据、还原备份数据:

这个也可以说是导入导出数据,这个和上面的单文件导入不同,这个 还原/备份(导入导出)整个表中的所有信息。

备份数据(导出整表数据):

mysqldump -uroot -p 数据库名 表名 > 需要导出的位置/文件名字.拓展

例如把数据导出到  /opt 
mysqldump -uroot -p lib profession > /opt/out.txt

还原备份(导入整表数据):

首先创建一个数据库:

create database import_table;

进入数据库:

use import_table;

导入备份数据:

用法:
source 文件来源;

例如:
source /opt/out.txt

查看表中的数据:

select * from 表名;

show tables;                            //查看当前数据库下有哪些表
select * from profession;    //查看profession中的信息

拓展知识:

Mysql 的bin目录中有许多工具/脚本,一下举例比较常见的。

  1. mysql: MySQL 客户端,用于连接 MySQL 服务器并执行 SQL 语句。

    连接 MySQL 服务器:mysql -u root -p
    执行 SQL 语句:mysql -u root -p dbname < /path/to/sql/file.sql
  1. mysqldump: 用于备份 MySQL 数据库。

    备份整个数据库:
    mysqldump -u root -p dbname > /path/to/backup/file.sql
    
    备份单个表:
    mysqldump -u root -p dbname tablename > /path/to/backup/file.sql
  1. mysqlshow:用于显示 MySQL 数据库和表的信息。

    显示数据库的所有表:
    mysqlshow -u root -p dbname
    
    显示表的列信息:
    mysqlshow -u root -p dbname tablename
  1. mysqladmin: 用于执行 MySQL 管理操作,如创建用户、创建数据库等。

    创建新的 MySQL 用户:
    mysqladmin -u root -p createuser newuser
    
    创建新的 MySQL 数据库:
    mysqladmin -u root -p createdb newdb
  1. mysqlcheck: 用于检查和修复 MySQL 数据库中的表。

    检查和修复整个数据库:
    mysqlcheck -u root -p --auto-repair --check dbname
    
    检查和修复单个表:
    mysqlcheck -u root -p --auto-repair --check dbname tablename
  1. mysqlimport: 用于导入数据到 MySQL 数据库中。

    导入 CSV 文件到数据库中:
    mysqlimport -u root -p dbname /path/to/csv/file.csv
    
    导入数据到表中:
    mysqlimport -u root -p --fields-terminated-by=, --lines-terminated-by='\n' dbname /path/to/data/file.txt
  1. mysqlbinlog: 用于将 MySQL 的二进制日志转换成可读的 SQL 语句。

    mysqlbinlog /path/to/binlog/file > /path/to/sql/file.sql
  1. mysql_upgrade: 用于升级 MySQL 数据库的版本。

    mysql_upgrade -u root -p
最后修改:2024 年 01 月 24 日
咱们谁跟谁,用不着~