MySQL 解压版的在多种系统下的安装与配置
以下内容请严格按照文中所述方式书写,不要擅自添加空格。文中没有空格的地方,命令行就没有空格!
解压与安装
MySQL中的压缩包在windows中是zip文件,在linux和unix中一般是.tar.gz文件。windows中没什么好说的,解压到想要安装的位置即可。
在Linux中,找到 tar.gz 包的位置,使用如下命令:
tar -xzf <压缩包名> -C <安装的目录>
linux中 / 代表根目录,一般MySQL安装在 /usr/local/mysql 目录下
创建用户与用户组(windows跳过)
创建用户和用户组,并为指定目录赋权。直接从官方文档照搬的,照着打就行。
shell> groupadd mysql shell> useradd -r -g mysql -s /bin/false mysql shell> cd /usr/local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz #上个步骤如果解压了这个包就可以不执行这行 shell> ln -s full-path-to-mysql-VERSION-OS mysql #创建软链接,这步其实可以不要 shell> cd mysql shell> mkdir mysql-files shell> chown mysql:mysql mysql-files shell> chmod 750 mysql-files
配置环境变量
为了能够直接使用 MySQL 中的命令,我们一般都需要将MySQL的 bin 目录加入环境变量 PATH 末尾。
-
Windows 系统使用分号(
;)隔离路径。假设C:/Program Files/mysql-5.7.25-winx64为 MySQL 安装目录,执行以下命令设置MySQL的PATH环境变量:setx /M PATH "%PATH%;C:\Program Files\mysql-5.7.25-winx64\bin" -
类 Unix 系统使用冒号(
:)隔离路径。假设/usr/local/mysql为 MySQL 安装目录,执行以下命令设置MySQL的PATH环境变量:export PATH=$PATH:/usr/local/mysql/bin
初始化 MySQL
-
如果执行以下命令:
mysqld --initialize
生成 data (指生成 MySQL 安装目录的 data 中的数据),并为 root 生成随机密码,该密码将被标记为过期密码。如果没有看到提示信息,就需要去 MySQL 的日志文件中查找。
- 如果是linux需要在后面加上 --user=mysql
mysqld --initialize --user=mysql # 输出内容此处省略,直接显示最后一行 2019-08-08T12:25:23.095960Z 1 [Note] A temporary password is generated for root@localhost: Pq7!oXP?ufGs
注意本行最后 localhost:后,为自动生成的临时密码
-
如果执行以下命令:
mysqld --initialize-insecure #windows mysqld --initialize-insecure --user=mysql #linux
生成 data,不生成密码。
-
在 Windows 中可以使用
--console显示信息到命令行。如,执行以下命令:mysqld --initialize --console这将生成 data,并在命令行显示相关信息(包括随机密码等)。如下所示:
A temporary password is generated for root@localhost: JMlgyW!dc4_Groot@localhost后即为自动生成的随机密码。
注册服务
在 Windows 中需要将代表 MySQL 服务器的 mysqld 注册到 Windows 服务中方可使用。Unix 和类 Unix 系统可跳过此步骤。
方法一
注册 Windows 服务的语法:
"注册服务的文件路径" --install[-manual] [服务名]
-
加上
-manual表示手动启动(和--install间无空格) -
服务名即注册到服务的名称
示例:
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld" --install-manual
注销服务:
sc delete 服务名
方法二
注册:
mysqld --install[-manual]
注销:
mysqld --remove
开启服务
Windows 开启/关闭服务
-
开启
net start mysql -
关闭
net stop mysql
Unix 和类 Unix 系统启动/关闭 MySQL 服务器
-
开启
mysql.server start -
关闭
mysql.server stop
登录账户
-
如果使用的是
--initialize或--initialize -console命令初始化,使用账号密码登录:mysql -u root -p回车后显示如下:
Enter password: (此处为之前初始化生成的随机密码)如果不知道密码,需要去错误日志中查找。
-
如果使用的是
--initialize-insecure命令初始化,则使用跳过密码登录:mysql -u root --skip-password
修改密码
指定根用户(root)密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root-password';
创建配置文件
windows :在 MySQL 安装目录下新建一个 my.ini 的配置文件,填写以下内容:
Linux&Unix:在 /etc 目录(不是MySQL安装目录)下创建 my.cnf 文件,填写以下内容:
[client] port=3306 # 端口号 default-character-set=utf8 # 客户端默认字符集
[mysqld] character_set_server = utf8 # MySQL安装目录 basedir = C:/Program Files/mysql-5.7.25-winx64 # Linux 和 Unix 中不需要配置 datadir = C:/Program Files/mysql-5.7.25-winx64/data # Linux 和 Unix 中不需要配置
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
注意:路径里的文件夹之间用
/或\\分隔,而不是\。
——————————————————————————————————————————————
Linux 下设置随服务器开机启动
cp support-files/mysql.server /etc/init.d/mysql.server
chkconfig --add /etc/init.d/mysql
chkconfig mysql on
chmod +x /etc/init.d/mysql
systemctl start mysql
——————————————————————————————————————————————
参考内容
内容参考了《MySQL是怎样运行的》第二章「重新认识MySQL」和 MySQL8 官方文档。 ↓↓↓扫码购买有优惠↓↓↓



浙公网安备 33010602011771号