一. 安装数据库
基于Debian平台的Linux系统,可以直接使用apt命令安装mysql
sudo apt install -y mysql-server mysql-client
由于历史原因,如果在CentOS里运行yum install mysql
不会安装mysql数据库,而是会安装
MariaDB(关于MySql和MariaDB的关系,请参考百度百科)。在CentOS里安装mysql要稍微复杂一些:
- 从mysql官网上下载mysql仓库(MySQL Yum Repository),会得到
mysql80-community-release-el7-3.noarch.rpm
文件。可以点击这里直接开始下载 - 运行
yum install mysql80-community-release-el7-3.noarch.rpm
安装mysql repository. - 此时执行命令:
yum repolist |grep -v grep|grep mysql
查看仓库列表(repolist
)会显示出:
- mysql80-community/x86_64 MySQL 8.0 Community Server 49
- 默认安装的mysql版本是8.0,而我们在开发中常用的是5.7版本,所以需要修改配置文件,默认安装5.7版本。使用
vim vim /etc/yum.repos.d/mysql-community.repo
命令修改mysqlcommunity.repo
文件。将文件中,mysql80的enable值改为0,mysql57的enable值改为1.
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
- 运行
yum install mysql-community-server
安装mysql数据库。
二. 配置数据库
- Ubuntu :
service mysql start|stop|restart|status
- Deepin :
systemctl start|stop|restart|status mysqld
- CentOS7 :
systemctl start|stop|restart|status mysqld
- CentOS6 :
service mysqld start|stop|restart|status
三. 连接数据库
各个 Linux 系统连接数据库的语法都一样
语法: mysql -hloaclhost -uroot -p123456 -P3306
- -h : host(ip地址) localhost = 127.0.0.1
- -u : username(用户账户)
- -p : password(密码)
- -P : port(端口, 默认端口3306)
在其他版本的Linux里,root用户的默认密码是空,可以不使用密码直接登录。但是在CentOS7里,
mysql安装完成以后,会生成一个临时密码,我们需要通过命令查看到这个默认密码。
cat /var/log/mysqld.log |grep password
四.设置root密码
数据库连接成功以后,因为此时使用的是root用户的临时密码,此时无法进行任何的操作,需要先修改root用户的密码。
alter user root@localhost identified with mysql_native_password by '你的密码';
备注 第一次使用 root 连接后最好添加一个新的用户来操作。出于安全考虑,日常开发中最好不要使用root
#创建新用户,并设置密码
#*.* 代表该用户可以操作任何库、任何表
#主机名可以使用 '%', 代表允许该用户从任何机器登陆
GRANT ALL PRIVILEGES on *.* to '用户名'@'localhost' IDENTIFIED BY "密码" WITH GRANT OPTION;
#刷新使权限生效
flush privileges;
五.退出数据库
四种方式效果一样:
- exit
- quit
- \q
- 快捷键: ctrl + d
六.密码忘记咋办!??
- 打开配置:
vim /etc/my.cnf
- 添加这么一段:
[mysqld]
skip-grant-tables
如果文件中已存在[mysqld]
, 则直接将 skip-grant-tables
写到其下方即可。
3. 修改完成后,保存退出,重启服务: sudo systemctl restart mysql.service
4. 使用命令sudo mysql -uroot
重新连接MySql服务器,此时可以不使用密码直接登录用户。
5. 执行update mysql.user set authentication_string=password('你的密码') where user="root"
; 修改root用户的密码。
6. 执行flush privileges
刷新策略,使策略立刻生效,并退出mysql客户端。
7. 修改 /etc/msyql/mysql.cnf
文件,注释掉第二步添加的两段内容。
8. 运行sudo systemctl restart mysql.service
重启mysql服务器。
9. 此时可以使用新密码登录mysql服务器。
七.安装mycli
MyCli 是一个 MySQL 命令行工具,支持自动补全和语法高亮。也可用于 MariaDB 和 Percona。在linux中自动补全使用起来非常便捷
# 安装扩展包,有些包直接yum无法下载,因此提供了这个工具包
yum -y install epel-release
# 因为mycli是基于python编写的一个脚本,所以需要安装python环境
yum -y install python3
# 安装mycli
sudo pip3 install mycli
注意:python的安装与配置详见另一篇文章