Linux上的MySQL操作
引言
Linux上的操作可以说是后台程序员的基本功之一,这次我们来讨论在Linux上的MySQL常用操作。
安装
安装之前可以启动服务看本机是否已经安装过MySQL
1 | service mysqld start |
删除操作不在本文的讨论内容中,如果服务启动成功或者提示服务已经启动,可以停止服务然后跳到下一步配置操作
1 | service mysqld stop |
安装(yum命令自动从网上寻找mysql服务资源,下载至本地并完成安装,安装过程中无脑yes就行)
1 | yum -y install mysql-server |
同时也可以采用自己下载安装包安装的方式,但是比较繁琐,本文不再讨论
配置
my.cnf是linux系统中MySQL的配置文档,使用mysql --help | grep 'my.cnf'命令即可查看MySQL启动时读取配置文件的默认目录
1 | mysql --help | grep 'my.cnf' |
从上面可以清楚地看到,/etc/mysql/my.cnf、/etc/my.cnf以及~/.my.cnf这些文件就是MySQL启动时默认会依次读取的配置文件,并且顺序排前的优先
在本机查询出来就是当前系统中默认配置文件的位置,读者需注意自己本机显示的顺序,然后找到对应的位置修改文件
在笔者的机器中是/etc/my.cnf,所以可以直接使用vi进行编辑
1 | vi /etc/my.cnf |
在[mysqld]下加入skip-grant-tables可以跳过登录验证,不需要输入密码,之后设置好密码之后需要将此行删除或者注释。启动MySQL服务
1 | service mysqld start |
运行命令进入MySQL
1 | mysql -u root -p |
由于此时没有设置密码,要求你输入密码时直接回车跳过即可,设置密码之后每次都需要输入密码
1 | mysql> |
上述命令中root_password就是设置的密码,读者可以根据自己的需要设置相应的密码,在MySQL命令行状态下,exit命令可以退出
1 | mysql> exit |
在此之后,只需要重启MySQL服务就可以使用自己设定的密码登录了(要注意去掉配置文件中的skip-grant-tables)
1 | service mysqld restart |
开启binlog
在配置文件中进行如下修改(注意要关闭服务后修改再重启服务)
1 | [mysqld] |
重启服务后查看binlog开启是否成功,如下就是开启成功后的信息
1 | mysql> SHOW VARIABLES LIKE '%log_bin%'; |
导入
- 首先创建空数据库
1 | mysql>create database abc; |
- 导入数据库
1 | # 指向创建的数据库 |
导出
导出数据和表结构:
1 | mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql |
只导出表结构:
1 | mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql |
参考
本文参考Linux安装MySQL(超详细) 及 MySQL 的 binlog 的三种格式、Linux系统MySQL如何导入数据库




