Mysql 的安装和使用
title: Mysql 的安装和使用 id: 992dad0a199d9fb62ccabb8c5c22217c tags: [] date: 2000/01/01 00:00:00 updated: 2023/03/04 19:29:12 isPublic: true --#|[分隔]|#--
Mysql 的安装和使用
常用命令
查看所有指令: service mysql | /etc/init.d/mysql
启动: service mysql start | /etc/init.d/mysql start
关闭: service mysql stop | /etc/init.d/mysql stop
重启: service mysql restart | /etc/init.d/mysql restart
安装和卸载
Linux 的 CentOS
使用 apt-get
apt-get install mysql-serverMac 安装
下载对应mySql,下载官方mySql
我现在的电脑是Mac,所以可以下载以下两个版本:
macOS 10.15 (x86, 64-bit), DMG Archive(dmg可视化窗口安装文件)macOS 10.15 (x86, 64-bit), Compressed TAR Archive(指令安装)
Mac 卸载
Mac电脑安装数据库后,是可以在系统偏好设置窗口最下面,看到mySql标识的。
先停止所有mysql有关进程,然后依次执行下面的指令:
执行完毕后,系统偏好设置窗口的mySql标识消失,可以重新安装其他mySql了。
刚安装完成的初始化
Ubuntu系统使用apt-get安装的mysql,没有提示让用户设置账户名和密码,而是提供了一个默认的账户名和密码,这里我们需要自己去查看、登录并创建新用户。
所以,在我的机器上:
默认用户:
debian-sys-maint默认密码:
7Vz2AGk0rl1Hpbdk
登录默认账户
使用quit;退出mysql,再登陆就可以新用户名新的密码了。
基本使用
使用Navicat连接数据库
Navicat连接数据库使用Navicat正常的新建连接,填写了关键的主机、端口、用户名(数据库的用户名)、密码(数据库的密码)后,进行连接测试。
可能出现的弹框报错一:
2003 - Can't connect to MySQL server on '39.96.68.33' (61 "Connection refused")
原因一:mysql未启动。
直接此教程顶部的启动命令启动就可以了。
原因二:服务的防火墙的原因,我们需要开发3306这个mysql默认使用的端口,让外部能访问。
我这里使用的是阿里云ECS,过程如下:
登录阿里云ECS控制台
点击左上角,展开侧边栏菜单,选择云服务ECS
菜单栏中选择【网络与安全】 - 【安全组】
右侧会展示你的的安全组列表,基本就是你和你的ECS服务器对应
找到mysql的那个服务器所对应的那一条安全组,点击其最右侧的【配置规则】
打开的新页面,会展示这个安全组所配置一些允许通行的端口号和描述
如果配置的通行端口号中有3306,那就不是防火墙的问题了,到此为止,否则继续
选择列表上面的快速添加,出现弹框,直接弹框中的多选中的【MySQL(3306)】勾上,点击确定即可。
原因三:mysql配置原因,只允许本地或某个ip访问
需要先修改mysql配置:
然后进入mysql中,执行以下指令:
操作完成后,就可以再次连接来测试了。
可能出现的弹框报错二:
这是因为Navicat使用的mysql账户,并没有开放远程访问权限,需要去服务开启权限:
完成。
执行.sql文件
如果.sql文件的指令集合中,包含
use {数据库名}的指令,可能会导致执行到指令的其他数据库中。
方法一: 一行指令执行
方法二: 先使用指令登录到 mysql 中,然后:
执行.sql文件时报错
在使用 Navicat,或者直接使用指令使用 .sql 文件时,可能会报错。
使用 Navicat 时报的错不明所以,但使用指令时报错如下:
原因是 mysql 配置中的最大允许数据包 max_allowed_packet 的值过小,此值默认为16M,最大为1G。
临时修改方案: 使用指令进入到 mysql 程序中,执行 set global max_allowed_packet = 200M; 来修改,但重启 mysql 后,此值会恢复。
永久解决方案: 去修改 mysql 的配置文件并重启 mysql 即可。
可以使用以下指令来查找 mysql 的配置文件位置:
筛选出来的文件,可能还会引入其他位置的配置文件,我的配置文件最终文件为 /etc/mysql/mysql.conf.d/mysqld.cnf,修改里面的 max_allowed_packet 这一项的值。
保存文件后重启 mysql,再执行 sql 文件就不会报错了。
常用指令
Last updated
Was this helpful?