目录
Day25 MySQL入门
25.1 安装 & 配置 & 启动
25.1.1 win系统
第1步:下载安装
第2步:解压至任意文件夹(下载的解压包)
第3步:创建配置文件
第4步:初始化
第5步:启动
第6步:测试连接MySQL
注意:容易报错的地方
25.1.2 mac系统
第1步:安装和初始化
第2步:创建配置文件
第3步:启动
第4步:测试连接MySQL
25.1.3 配置文件
25.1.4 关于密码
25.1.4.1 设置和修改root密码
25.1.4.2 忘记root密码
MySQL官方下载地址https://downloads.mysql.com/archives/community/
建议解压至软件安装目录,例如:
在MySQL的安装目录下创建 my.ini
的文件,作为MySQL的配置文件。(可以直接用txt文件编写好,改下后缀就行了)
其实,MySQL的配置文件可以放在很多的目录,下图是配置文件的优先级:
强烈,建议大家还是把配置文件放在MySQL安装目录下,这样以后电脑上想要安装多个版本的MySQL时,配置文件可以相互独立不影响。
注意:如果你电脑的上述其他目录存在MySQL配置文件,建议删除,否则可能会影响MySQL的启动。
>>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --initialize-insecure
初始化命令在执行时,会自动读取配置文件并执行初始化,此过程主要会做两件事:
自动创建data目录,以后我们的数据都会存放在这个目录。
同时创建建必备一些的数据,例如默认账户 root (无密码),用于登录MySQL并通过指令操作MySQL。
启动MySQL常见的有两种方式:
临时启动
>>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe"
注意:此时程序会挂起,内部就是可以接收客户端发来的MySQL指令,关闭窗口或Ctrl+c 就可以停止运行。
这种启动方式每次开机或想要开启都需要手动执行一遍命令比较麻烦。
制作windows服务,基于windows服务管理。
>>>"C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --install mysql57
创建好服务之后,可以通过命令 启动和关闭服务,例如:
>>> net start mysql57 >>> net stop mysql57
也可以在window的服务管理中点击按钮启动和关闭服务。例如:
以后不再想要使用window服务了,也可以将制作的这个MySQL服务删除。
>>>"C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --remove mysql57
安装并启动MySQL之后,就可以连接MySQL来测试是否已正确安装并启动成功。
以后在开发时,肯定是要用Python代码来连接MySQL并且进行数据操作(后面讲)。
在安装MySQL时,其实也自动安装了一个工具(客户端),让我们快速实现连接MySQL并发送指令。
注意:如果把bin目录加入环境变量,每次在运行命令时,就不用再重新输入绝对路径了。
上述过程如果操作完成之后,证明你的安装和启动过程就搞定了。
在windowns安装过程中如果有报错 ( msvcr120.dll不存在 ),请下载并安装下面的两个补丁:
vcredist:(主要)https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=40784https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=40784
dirctx:https://www.microsoft.com/zh-CN/download/details.aspx?id=35https://www.microsoft.com/zh-CN/download/details.aspx?id=35
mac系统和win不同,MySQL为他提供了非常方便的一站式安装程序,只要点击、next就可以安装、初始化完成。
MySQL官方下载地址https://downloads.mysql.com/archives/community/
这个基于dmg文件的安装过程,其实包含了:
安装,默认安装在了 /usr/local/mysql-5.7.31-macos10.14-x86_64/
目录。
初始化,在安装目录下创建data目录用于存放数据; 初始化模块数据库以及账户相关等,例如: 账cd
建议在MySQL安装目录下创建 etc/my.cnf
作为MySQL的配置文件。
MySQL的配置文件按照优先级,会在以下目录中寻找:
为了避免多个版本共存时,配置文件混乱的问题,建议大家还是把配置文件放在当前MySQL的安装目录下。
在Mac系统中启动MySQL常见的有2种方式:
安装目录中自带 mysql.server
脚本(建议)
sudo /usr/local/mysql/support-files/mysql.server start # 输入电脑密码 sudo mysql.server start # 输入电脑密码
sudo /usr/local/mysql/support-files/mysql.server stop
为了避免每次执行命令都需要些路径,可以将路径 /usr/local/mysql/support-files
加入到环境变量中。
操作完成之后,再在终端执行下命令:source ~/.zprofile
让设置的环境变量立即生效。
注意:mac系统的版本如果比较老,会显示空白的 zprofile
文件,此就要去打开 bash_profile
文件。
这样设置好之后,以后就可以使用下面的命令去启动和关闭MySQL了。
sudo mysql.server start sudo mysql.server stop
安装并启动MySQL之后,就可以连接MySQL来测试是否已正确安装并启动成功。
以后在开发时,肯定是要用Python代码来连接MySQL并且进行数据操作(后面讲)。
在安装MySQL时,其实也自动安装了一个工具(客户端),让我们快速实现连接MySQL并发送指令。
注意:
/usr/local/mysql/bin
也可以加入到环境变量。
至此,在Mac系统中关于MySQL的安装和配置就完成了。
上述的过程中,我们在配置文件中只添加了很少的配置。
其实,配置项有很多,而哪些配置项都有默认值,如果我们不配置,MySQL则自动使用默认值。
在windows系统中模块默认 root 账户是没有密码的,如果想要为账户设定密码,可以在利用root账户登录成功之后,执行:
如果你忘记了MySQL账户的密码。
修改配置文件,在 [mysqld] 节点下添加 skip-grant-tables=1
[mysqld] ... skip-grant-tables=1 ...
重启MySQL,再次登录时,不需要密码直接可以进去了
windows重启
net stop mysql57 net start mysql57
mac重启
sudo mysql.server restart
重启后,无序密码就可以进入。
>>> mysql -u root -p
进入数据库后执行修改密码命令
use mysql; update user set authentication_string = password('新密码'),password_last_changed=now() where user='root';
退出并再次修改配置文件,删除 [mysqld] 节点下的 skip-grant-tables=1
[mysqld] ... # skip-grant-tables=1 ...
再次重启,以后就可以使用新密码登录了。