Skip to content

[TOC]

for centos7.x

centos7.5 + mysql8.0.28

安装前的准备

把可能遗留的mariadb卸载掉,然后在下载libaio-devel依赖库,防止后续出现报错。

cd /opt/
yum update -y
yum install -y libncurses*
yum install -y libaio-devel
yum remove -y mariadb*
yum install wget -y

如果是云服务器的话,想要支持远程连接,你还要放开安全组或者防火墙的3306端口。

下载

留个百度云盘链接:https://pan.baidu.com/s/1tWkMtlm55bkY39cx0m-wSQ?pwd=jdzg 提取码:jdzg 你可以打开官网下载地址:https://dev.mysql.com/downloads/mysql/,按照截图所示下载即可。

1832670160016637952.png

1832670160540925952.png

你可以下载到本地之后,然后再上传到服务器中。 也可以直接:

bash
cd /opt/
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
ll

[root@cs opt]# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
[root@cs opt]# ll
-rw-r--r--. 1 root root 614964216 Jun  9 17:56 mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz

ok,下载完毕。

安装

1. 创建用户

bash
useradd mysql

2. 创建数据存储的目录并给权限

bash
cd /opt/
mkdir -p /data/mysql8/3306/data
chown -R mysql.mysql /data/mysql8

[root@cs opt]# mkdir -p /data/mysql8/3306/data
[root@cs opt]# chown -R mysql.mysql /data/mysql8

3. 解压缩安装包

bash
cd /opt/
tar xf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
ll


[root@cs opt]# pwd
/opt
[root@cs opt]# tar xf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
[root@cs opt]# ll
total 628800
drwxr-xr-x. 9 root root       129 Jun 11 11:23 mysql-8.0.33-linux-glibc2.12-x86_64
-rw-r--r--. 1 root root 614964216 Jun  9 17:56 mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
-rw-r--r--. 1 root root  26071329 Jun  9 19:37 Python-3.10.10.tgz
-rw-r--r--. 1 root root   2848144 Jun  9 19:34 tengine-2.3.3.tar.gz
[root@cs opt]# ls mysql-8.0.33-linux-glibc2.12-x86_64
bin  docs  include  lib  LICENSE  man  README  share  support-files

现在解压后的安装包所在的目录就是/opt下的mysql-8.0.33-linux-glibc2.12-x86_64中。 4. 将安装包所在目录做一个软连接到/usr/local/mysql

bash
cd /opt/
ln -s /opt/mysql-8.0.33-linux-glibc2.12-x86_64 /usr/local/mysql
ls -ltr /usr/local/mysql

[root@cs opt]# ln -s /opt/mysql-8.0.33-linux-glibc2.12-x86_64 /usr/local/mysql
[root@cs opt]# ls -ltr /usr/local/mysql   # 这里就能看到建立软链接之后的指向关系了
lrwxrwxrwx. 1 root root 40 Dec  3 21:38 /usr/local/mysql -> /opt/mysql-8.0.33-linux-glibc2.12-x86_64
# 补充一个删除软连接的命令
[root@cs opt]# rm -rf /usr/local/mysql

5. 将/usr/local/mysql添加到环境变量

bash
cd /opt/
echo "export PATH=/usr/local/mysql/bin:\$PATH" >> /etc/profile
source /etc/profile
cat /etc/profile
mysql -V

[root@cs opt]# mysql -V
mysql  Ver 8.0.33 for Linux on x86_64 (MySQL Community Server - GPL)

注意,如果输入mysql -V没有返回版本号,则尝试删除软连接并且重新建立软连接的动作。

6. 创建MySQL配置文件

配置文件内容如下:

ini
cat >/etc/my.cnf<<\EOF

[mysqld]
user=mysql
port=3306
server_id=51
basedir=/usr/local/mysql
datadir=/data/mysql8/3306/data
socket=/tmp/mysql.sock

# 服务端字符集
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4;'

[mysql]
# 客户端字符集
default-character-set=utf8mb4
socket=/tmp/mysql.sock

EOF
cat /etc/my.cnf

初始化

bash
cd /opt/
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql8/3306/data

[root@cs opt]# pwd
/opt
[root@cs opt]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql8/3306/data
2023-06-11T07:12:21.118771Z 0 [System] [MY-013169] [Server] /opt/mysql-8.0.33-linux-glibc2.12-x86_64/bin/mysqld (mysqld 8.0.33) initializing of server in progress as process 4910
2023-06-11T07:12:21.131867Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-06-11T07:12:21.583086Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-06-11T07:12:22.871684Z 6 [Warning] [MY-010453] [Server] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.

只要初始化过程中没有ERROR级别的错误,就说明初始化成功了。

初始话失败的话,可以根据error解决问题,然后清空data目录:

bash
rm -rf /data/mysql8/3306/data/*

之后再重新尝试初始化命令:

bash
cd /opt/
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql8/3306/data

启动测试

如果你跟着我的步骤走到这里,那么你可以在任意目录下执行如下命令启动MySQL服务。

bash
mysqld &

[root@cs opt]# pwd
/opt
[root@cs opt]# mysqld &
[1] 4973
[root@cs opt]# 2023-06-11T07:15:29.006200Z 0 [System] [MY-010116] [Server] /opt/mysql-8.0.33-linux-glibc2.12-x86_64/bin/mysqld (mysqld 8.0.33) starting as process 4973
2023-06-11T07:15:29.043920Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-06-11T07:15:29.465207Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-06-11T07:15:29.979636Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-06-11T07:15:29.979658Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-06-11T07:15:30.001981Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /tmp/mysqlx.sock
2023-06-11T07:15:30.002015Z 0 [System] [MY-010931] [Server] /opt/mysql-8.0.33-linux-glibc2.12-x86_64/bin/mysqld: ready for connections. Version: '8.0.33'  socket: '/tmp/mysql.sock'  port: 3306  MySQL Community Server - GPL.

[root@cs opt]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.33 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

mysql> exit;
Bye
[root@cs opt]#

OK了,启动成功,MySQL的客户端也能直接登录进去了。说明安装过程都没问题。 当然啦,我们后续不会这么启动服务,接下来,我们要制作启动脚本,来个更方便的启动、重启、关闭MySQL服务。

MySQL服务几种启动方式

这小节主要聊聊我们都可以通过哪几种方式来管理MySQL服务。 注意,这一小节的操作只适用于centos7.x系统。 mysql.server mysql安装成功后,安装目录中的support-files目录会有个mysql.server脚本文件,我们通过该文件来启动MySQL。

bash
/usr/local/mysql/support-files/mysql.server stop
/usr/local/mysql/support-files/mysql.server start
/usr/local/mysql/support-files/mysql.server restart


[root@cs opt]# /usr/local/mysql/support-files/mysql.server stop
Shutting down MySQL.2023-12-03T13:45:34.479075Z 0 [System] [MY-013172] [Server] Received SHUTDOWN from user <via user signal>. Shutting down mysqld (Version: 8.0.33).
.2023-12-03T13:45:35.673140Z 0 [System] [MY-010910] [Server] /opt/mysql-8.0.33-linux-glibc2.12-x86_64/bin/mysqld: Shutdown complete (mysqld 8.0.33)  MySQL Community Server - GPL.
 SUCCESS! 
[1]+  Done                    mysqld
[root@cs opt]# /usr/local/mysql/support-files/mysql.server start
Starting MySQL.Logging to '/data/mysql8/3306/data/cs.err'.
 SUCCESS! 
[root@cs opt]# /usr/local/mysql/support-files/mysql.server restart
Shutting down MySQL. SUCCESS! 
Starting MySQL. SUCCESS!

制作service脚本来启动MySQL服务 centos6中通过service来管理服务,我们在centos7中也可以用这个命令来管理MySQL服务。

bash
service mysqld start/stop/restart/status

那么我们需要这么做就可以:

bash
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
service mysqld restart


[root@cs opt]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@cs opt]# service mysqld status
 SUCCESS! MySQL running (5492)
[root@cs opt]# service mysqld restart
Shutting down MySQL.. SUCCESS! 
Starting MySQL. SUCCESS!

通过systemctl来管理MySQL服务 centos7中通过systemctl来管理服务:

bash
systemctl  start/stop/restart/status  mysqld

所以,我们也可以这么配置下:

bash
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
systemctl enable mysqld
systemctl daemon-reload
systemctl restart mysqld
systemctl status mysqld

[root@cs opt]# 如果之前做了下面的cp命令,就不用再重复做了
[root@cs opt]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@cs opt]# 通过下面的命令基于原来service命令中的msyqld转换systemctl的启动MySQL的脚本文件
[root@cs opt]# systemctl enable mysqld
mysqld.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig mysqld on
[root@cs opt]# systemctl restart mysqld
[root@cs opt]# systemctl status mysqld
 mysqld.service - LSB: start and stop MySQL
   Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
   Active: active (exited) since Sun 2023-06-11 15:32:21 CST; 10s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 6146 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=0/SUCCESS)

Jun 11 15:32:21 cs systemd[1]: Starting LSB: start and stop MySQL...
Jun 11 15:32:21 cs mysqld[6146]: Starting MySQL SUCCESS!
Jun 11 15:32:21 cs systemd[1]: Started LSB: start and stop MySQL.
Jun 11 15:32:21 cs mysqld[6146]: 2023-06-11T07:32:21.904793Z mysqld_...s
Hint: Some lines were ellipsized, use -l to show in full.

用户管理

初始化成功之后,MySQL默认创建了一个本地用户root用户,且该用户是无密码的,所以我们要为这个用户添加密码。 而且这个root用户通常只能管理员登录到服务器中才能使用的,你的应用程序要单独创建一个普通权限的用户。 所以,我们要做两件事,为root用户添加密码,并且以后都通过该用户来管理其它用户和权限。 想要了解更细节的用户管理和权限管理,你就要自己学习相关的内容了。

bash
mysql

alter user root@"localhost" identified with mysql_native_password by "123";
create user zhangkai@'%' identified with mysql_native_password by "123";
grant all on *.* to zhangkai@"%";


[root@cs opt]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.33 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> -- 为root账号添加密码
mysql> alter user root@"localhost" identified with mysql_native_password by "123";
Query OK, 0 rows affected (0.01 sec)

mysql> -- 创建一个普通用户
mysql> create user zhangkai@'%' identified with mysql_native_password by "123";
Query OK, 0 rows affected (0.01 sec)

mysql> select user,host,authentication_string,plugin from mysql.user;
+------------------+-----------+------------------------------------------------------------------------+-----------------------+
| user             | host      | authentication_string                                                  | plugin                |
+------------------+-----------+------------------------------------------------------------------------+-----------------------+
| zhangkai         | %         | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257                              | mysql_native_password |
| mysql.infoschema | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| mysql.session    | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| mysql.sys        | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| root             | localhost | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257                              | mysql_native_password |
+------------------+-----------+------------------------------------------------------------------------+-----------------------+
5 rows in set (0.00 sec)

mysql> -- 默认的创建的普通用户没啥权限,我们要给这个用户授权,允许该用户可以本地和远程登录,并且能够操作所有数据库中的所有表,这个权限已经不小了
mysql> grant all on *.* to zhangkai@"%";
Query OK, 0 rows affected (0.01 sec)

mysql> exit;
Bye

ok,接下来,就可以使用zhangkai这个普通用户进行云服务器本地或者在你电脑上进行远程连接操作了,注意,尽量不要把root用户放出去。并且,用户的权限越小越好,以免发生不必要的意外。

常见报错

mysql: error while loading shared libraries: libncursesso.6: cannot open shared object file: No such file or directory

安装完毕之后,执行命令报错: 1832670160977133568.png

解决方案:

bash
yum install libncurses*

然后再尝试。

for Windows

mysql8.8.31 + win10

下载

你可以打开官网下载地址:https://downloads.mysql.com/archives/community/,按照截图所示下载即可。

1832670161195237376.png 我这里也提供一份百度云盘链接:https://pan.baidu.com/s/14_4y1ZogN8bFulO0vsn6IA?pwd=12td 提取码:12td

安装

下载到本地的安装包是zip包,选择一个指定目录进行解压,解压的过程就是安装的过程,解压后的目录所在的位置就是MySQL的安装目录。

如下截图,我将MySQL解压并安装到C盘的software目录下,你可以选择其他位置,注意,安装目录不允许有中文、空格和其他特殊字符: 1832670162122178560.png

所以MySQL的安装目录就是C:\software\mysql-8.0.31-winx64,记好这个目录,后面会用到。

配置环境变量

拷贝安装目录内的bin路径,并将其添加到系统的环境变量中,即C:\software\mysql-8.0.31-winx64\bin,这一步是为了将来我们打开终端,就可以直接输入MySQL相关命令,操作系统会读取这个bin路径下的对应的可执行程序文件,然后让该文件执行具体命令。 1832670162424168448.png 然后按照下图所示添加环境变量: 1832670162759712768.png1832670165842526208.png

然后以管理员权限打开终端,输入mysqld -V如果返回了版本号和路径,表示环境变量添加成功。

1832670168887590912.png

添加配置文件

在你的MySQL安装目录下,手动创建my.ini文件,文件内容如下:

ini
[mysqld]
# 默认端口
port=3306
# mysql的安装目录,也是工作目录
basedir=C:/software/mysql-8.0.31-winx64
# 数据库存放的目录,data目录无需手动创建,MySQL初始化成功,就会自动创建了
datadir=C:/software/mysql-8.0.31-winx64/data
# 错误日志,如果启动失败,可以查看这个错误日志,定位错误原因
log_error=C:/software/mysql-8.0.31-winx64/mysql.err

# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10

# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB


# 默认使用 mysql_native_password 插件认证,mysql8.0.4之前,mysql连接时身份验证使用的是 mysql_native_password,但是mysql8.0.4之后,就默认改为了caching_sha2_password 方式
# 这就导致了一个问题,老版本的第三方的客户端或者jdbc驱动没有跟着更新的话,就连不上,这里为了方便,还是用原来的 mysql_native_password 方式认证。
default_authentication_plugin=mysql_native_password

# 指定默认字符集
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
skip-character-set-client-handshake=true

[client]
default-character-set=utf8mb4

[mysql]
# 可选的参数当你use到某个数据库中,路径上显示当前数据库的名字
# prompt=[\\d]>

# 关于字符集的设置
default-character-set=utf8mb4

注意,路径分隔符,不要用Windows默认的\,这样会有转义,很可能会导致安装失败,所以路径分隔符我们手动改为/

初始化

注意,必须是以管理员权限打开终端执行下面的初始化命令,注意必须是管理员权限!!!!否则报错!!!!!注意,必须是以管理员权限打开终端执行下面的初始化命令,注意必须是管理员权限!!!!否则报错!!!!!注意,必须是以管理员权限打开终端执行下面的初始化命令,注意必须是管理员权限!!!!否则报错!!!!!

bash
mysqld --initialize-insecure --console

--initialize-insecure,表示不安全的初始化。这个参数来自于--initialize参数。 因为从MySQL5.7版本开始,如果使用于--initialize参数执行初始化,会生成一个临时密码(临时密码文件在data目录内的"你的主机名.err"文件),后续我们还有手动改密码,那么找这个临时密码又比较麻烦,一不小心就会找错,所以这里改为--initialize-insecure,初始化时将root用户的登录密码设置为空,后续改密码我们也好直接一行命令就搞定了。 初始化成功如下图,可以发现没有error级别的日志输出,初始化成功的另一个标志是,在MySQL的安装目录中,会多个data目录,这个data目录是是MySQL在初始化过程中创建的数据目录,也是后续我们创建的数据库的目录所在。 1832670169785171968.png

如果你没有发现data目录,说明初始化过程有些问题,重新以管理员的身份打开终端执行初始化命令。

添加系统的服务

这一步是将MySQL服务端添加到系统的服务中,并且设置为自动/手动。 如果设置为自动,表示开机启动MySQL服务端。如果设置为手动,那么不会开机启动,当我们需要用到MySQL的时候,就需要手动启动MySQL服务,手动启动MySQL服务的方式是,管理员权限打开终端,使用net命令来管理MySQL服务了。注意,也必须是在以管理员身份运行的终端中才能使用net命令管理MySQL服务。

# 将MySQL服务端注册到Windows的系统服务中,可以配置开机自启动
mysqld install mysqld8

# 补充命令,当然了,如果你手一抖,注册的名字觉得不太好,没关系,可以通过下面的命令删除注册的服务,然后重新注册即可
mysqld remove mysqld8

# 手动启动或关闭MySQL服务端的话,就必须是管理员权限打开的终端执行net命令
net start mysqld8
net stop mysqld8

1832670170775027712.png 在Windows的系统中,也能找到刚刚注册的MySQL服务端。

1832670172104622080.png

测试

当MySQL服务正常启动后,我们就可以尝试使用客户端连接并操作MySQL了。 当然了,后续通过客户端操作MySQL服务,管理员权限打开的终端就不是必须得了,直接打开终端就能搞,也只有安装时才是管理员权限。

mysql -uroot -p

1832670173446799360.png

创建密码

此时的终端还是以管理员的身份打开的终端执行:

bash
mysqladmin -uroot -p password 123

1832670174004641792.png ok,在Windows平台安装MySQL完事了。 补充一个忘记密码的如何找回的操作,参考这个链接

常见问题

ERROR 2059 (HY000): Authentication plugin 'auth_gssapi_client' cannot be loaded:

win11+mysql8.0.31

现象就是安装好mysql之后,登录时报错:

bash
C:\Windows\System32>mysql -uroot -p
Enter password:
ERROR 2059 (HY000): Authentication plugin 'auth_gssapi_client' cannot be loaded: ÕÒ²»µ½Ö¸¶¨µÄÄ£¿é¡£

我遇到的问题原因是,该电脑已经装了mariadb11.1,且在运行状态.按照上述命令登录访问,默认访问到了mariadb的服务上,导致出现的这个错误.解决方案也就有了,把mariadb的服务干掉,把MySQL的服务重启下,这样就能正常登录了.

mac arm芯片安装mysql8.0.33

系统信息

1832670175233572864.png

下载安装

打开这个链接:https://downloads.mysql.com/archives/community/ ,下载到本地之后,一切按照图片所示,无脑跟着安装就行了。

1832670175682363392.png

1832670178958114816.png

1832670180199628800.png

1832670181197873152.png

1832670182170951680.png

1832670182753959936.png

1832670183819313152.png

1832670184721088512.png

1832670185727721472.png

1832670186004545536.png

1832670187002789888.png1832670187791319040.png

1832670188063948800.png

至于保留不保留的看你自己了。

1832670188839895040.png

添加环境变量

在终端进行如下操作,如果没有返回版本号说明没有添加环境变量。

bash
[zengxiangrui@localhost~% mysql -V
zsh:command not found:mysql
[zengxiangrui@localhost~%

如果返回了版本号,就不用再重复的添加环境变量了。

bash
[zengxiangrui@localhost~% mysql -V
mysql  Ver 8.0.33 for macos13 on arm64 (MySQL Community Server - GPL)

如果没有返回版本号,那我们就手动的添加环境变量,一次复制粘贴一条去命令行执行,不要一起复制粘贴。

sudo echo "export PATH=\$PATH:/usr/local/mysql/bin:/usr/local/mysql/support-files" >> ~/.bash_profile

sudo echo "source ~/.bash_profile" >> ~/.zshrc

source ~/.bash_profile

source ~/.zshrc

完事之后,你可以从新打开一个终端,再测试看看有没有版本号返回,有的话,就说明添加成功了。

bash
[zengxiangrui@localhost~% mysql -V
mysql  Ver 8.0.33 for macos13 on arm64 (MySQL Community Server - GPL)

到此,添加环境变量都OK了。

测试

安装成功之后,后台也已经默认启动成功了。你可以打开终端通过root账号和之前安装过程中设置的密码进行登录了。

1832670190312095744.png

这就表明安装成功了,你就可以学习使用了。

关于MySQL控制面板

当MySQL安装成功之后,在你的系统设置中,会有个MySQL的控制面板,你后续可以在这里启动停止、设置开机启动、卸载MySQL等操作,也可以进行其它的配置,参考下面两张图。

1832670190819606528.png

1832670193831116800.png

关于配置文件

通常MySQL的配置文件可以写在/etc/my.cnf

bash
[mysqld]
port=3306
server_id=51
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
log_error=/usr/local/mysql/data/mysqld.local.err

# 服务端字符集
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4;'

[mysql]
# 客户端字符集
default-character-set=utf8mb4

然后打开MySQL配置面板中,按照如下图操作即可:

1832670194779029504.png

完事之后,在MySQL控制面板中重启下MySQL服务即可。

mac inter芯片安装mysql8.0.33

系统信息

1832670195852771328.png

下载安装

打开这个链接:https://downloads.mysql.com/archives/community/ ,下载到本地之后,一切按照图片所示,无脑跟着安装就行了。

1832670196196704256.png

1832670197287223296.png

1832670197807316992.png

1832670198163832832.png

1832670198826532864.png

1832670199313072128.png

1832670199975772160.png

1832670200797855744.png

1832670201565413376.png

1832670202270056448.png

1832670202664321024.png

1832670203184414720.png

1832670203687731200.png

1832670204363014144.png

1832670204786638848.png

1832670205449338880.png

添加环境变量

在终端进行如下操作,如果没有返回版本号说明没有添加环境变量。

1832670206728601600.png

如果返回了版本号,就不用再重复的添加环境变量了。

bash
guanchangming@192 local % mysql -V
mysql  Ver 8.0.33 for macos13 on x86_64 (MySQL Community Server - GPL)

如果没有返回版本号,那我们就手动的添加环境变量,一次复制粘贴一条去命令行执行,不要一起复制粘贴。

sudo echo "export PATH=\$PATH:/usr/local/mysql/bin:/usr/local/mysql/support-files" >> ~/.bash_profile

sudo echo "source ~/.bash_profile" >> ~/.zshrc

source ~/.bash_profile

source ~/.zshrc

完事之后,你可以从新打开一个终端,再测试看看有没有版本号返回,有的话,就说明添加成功了。

bash
guanchangming@192 local % mysql -V
mysql  Ver 8.0.33 for macos13 on x86_64 (MySQL Community Server - GPL)

到此,添加环境变量都OK了。

测试

1832670207034785792.png

MySQL的控制面板

当MySQL安装成功之后,在你的系统设置中,会有个MySQL的控制面板,你后续可以在这里启动停止、设置开机启动、卸载MySQL等操作,也可以进行其它的配置,参考下面两张图。

1832670207630376960.png

1832670193831116800.png

配置文件

通常MySQL的配置文件可以写在/etc/my.cnf

bash
[mysqld]
port=3306
server_id=51
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
log_error=/usr/local/mysql/data/mysqld.local.err

# 服务端字符集
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4;'

[mysql]
# 客户端字符集
default-character-set=utf8mb4

然后打开MySQL配置面板中,按照如下图操作即可:

1832670209274544128.png

完事之后,别忘了在MySQL控制面板中重启下MySQL服务。

1832670210012741632.png

ge-20240111111910130](assets/image-20240111111910130.png)