目录

macOS环境

法一:包安装(比较简单)

1.下载 

2. 环境配置

 3. 启动服务

4. 安全设置

5. 启动mysql

法二:官方下载MySQL

1.下载 

2.环境变量

3. 启动 MySql

4. 初始化密码设置

windows环境

一、下载

二、 环境配置

三、安装mysql

1.初始化mysql

 2.安装Mysql服务

3.更改密码

四、检验

1.查看默认安装的数据库

2.其他操作

 配置mysql的远程连接

1.登录mysql

2.选择数据库 

3. 修改权限

常见报错 

 

macOS环境

法一:包安装(比较简单)

macOS12,安装 8.0版本

1.下载 

brew install mysql@8.0

2. 环境配置

sudo vi ~/.zshrc

export PATH="/usr/local/opt/mysql@8.0/bin:$PATH"

export LDFLAGS="-L/usr/local/opt/mysql@8.0/lib"

export CPPFLAGS="-I/usr/local/opt/mysql@8.0/include"

export PKG_CONFIG_PATH="/usr/local/opt/mysql@8.0/lib/pkgconfig"

source ~/.zshrc

 3. 启动服务

brew services start mysql@8.0

4. 安全设置

mysql_secure_installation

5. 启动mysql

mysql -u root -p

法二:官方下载MySQL

1.下载 

打开 MySql 官方下载页面

我是macOS12,所以选择了8.0.30

下载完成之后,打开安装,一直下一步安装完成,在最后安装完成时,会弹出对话框,里面包含了 mysql 账号跟临时密码,需要拷贝出来记录一下,后面会用它进行登录以及修改为新的 mysql 密码:

root 就是账号,密码就是随机生成的这串,如果使用强密码就是自己输入的那个密码。

在新版本中会有 use strong password excryption 与 use legacy password excryption 选项

use strong password encryption:使用强密码加密。mysql8 支持基于 SHA256 的更强的认证方式,所有新安装的 mysql server 建议使用这个方式。clients 或 connectors 如果不支持这个方式,就不能连接到这个 mysql server。use legacy password encryption:使用老式的密码加密,也就是上图中的。配置 root 的密码,合理的密码规则为:至少8个字符,包含数字、字母、其他字符。

接着输入你的密码,用于登陆,切记!跟上面旧密码一样的,一定要记住记好了!

安装成功以后,可以使用命令行进行启动操作,也可以进入 系统偏好设置 中找到 Mysql 进行可视化启动!

2.环境变量

第一步 :在终端切换到根目录,编辑 ~/.bash_profile 或 ~/.zshrc 文件,也可以两个都加 $ vim ~/.bash_profile

$ vim ~/.zshrc # 辅助:查看 mysql 本地路径

$ ps -ef|grep mysql

# 辅助:如果两个配置文件不存在,可以手动创建

$ cd ~

$ touch .zshrc

$ vim .zshrc

# 辅助:如果不想走命令行的方式修改环境变量,也可以直接打开文件进行可视化修改,不支持 Linux 可视化

$ open ~/.zshrc

第二步 :进入 vim 编辑环境。 按下 i 进入 insert 模式 ,输入 export PATH=$PATH:/usr/local/mysql/bin

export PATH=$PATH:/usr/local/mysql/support-files

第三步 :按下 esc 退出 insert 模式,输入 :wq 保存配置文件。 :wq 第四步 :在终端界面下输入以下命令,让配置文件的修改生效,并查看环境变量是否设置成功 $ source ~/.bash_profile

$ source ~/.zshrc

$ echo $PATH

到这里环境变量就设置完成了,我们可以查看一下当前 mysql 的版本: $ mysql -V

MySQL服务的启停和状态的查看

开启MySQL服务(需要输入电脑密码,不是数据库登录密码)

sudo mysql.server start

停止MySQL服务

sudo mysql.server stop

重启MySQL服务

sudo mysql.server restart

查看MySQL服务状态

sudo mysql.server status

3. 启动 MySql

第一步 :启动 mysql 服务

sudo mysql.server start

启动如果报错 ERROR! The server quit without updating PID file (/usr/local/mysql/data/***.pid). 这边是因为安装了就默认启动了,已经有进程在了,所以报错,关掉重启就没问题了。还有别的原因也会这样,比如没有读写权限等。

查看进程

ps -ef|grep mysqld

杀进程

kill 端口号

kill -9 端口号

第二步 :启动成功后,登录 mysql

mysql -u root -p

4. 初始化密码设置

设置初始化密码,进入数据库 mysql 数据库之后执行下面的语句,设置当前 root 用户的密码为 123456 (密码设置你自己的,这里只是举例)。 set password = password('123456');

回车,然后会提示设置成功。

退出 sql 界面

exit

以上 MySql 就在本地安装完成了 !!!

数据库管理(两种形式)

1.MySQL Workbench2.Navicat premium(指令练习)

windows环境

一、下载

1.下载解压

MySQL :: Download MySQL Community Server

下载后解压,存放到安装目录下

2.在【安装目录】内,新建 my.ini 空文件

可以先创建一个txt文件,另存为my.ini

输入以下内容(注意安装目录)

[mysql]

# 设置 mysql 客户端默认字符集

default-character-set=utf8

[mysqld]

#设置 3306 端口

port = 3306

# 设置 mysql 的安装目录

basedir= C:\mysql\mysql-8.2.0-winx64

# 设置 mysql 数据库的数据的存放目录

datadir= C:\mysql\mysql-8.2.0-winx64\data

# 允许最大连接数

max_connections=200

# 服务端使用的字符集默认为 8 比特编码的 latin1 字符集

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

 或者

[mysqld]

# 设置3306端口

port=3306

# 设置mysql的安装目录

basedir=C:\\mysql\\mysql-8.2.0-winx64 # 切记此处一定要用双斜杠\\,单斜杠我这里会出错,不过看别人的教程,有的是单斜杠

# 设置mysql数据库的数据的存放目录

datadir=C:\\mysql\\mysql-8.2.0-winx64\\Data # 此处同上

# 允许最大连接数

max_connections=200

# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统

max_connect_errors=10

# 服务端使用的字符集默认为UTF8

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

# 默认使用“mysql_native_password”插件认证

default_authentication_plugin=mysql_native_password

[mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8

[client]

# 设置mysql客户端连接服务端时默认使用的端口

port=3306

default-character-set=utf8

二、 环境配置

方便调用数据库,相当于一个快捷方式。

1 打开环境变量

按 win+q,输入“环境变量”,选择“编辑系统环境变量”,点击“环境变量”

2.新建系统变量 MYSQL_HOME

在下方的”系统变量“内,新建一个系统变量,变量名为 MYSQL_HOME ,变量值为【安装目录】,如图。

3.编辑 Path 变量

继续在“系统变量”找到变量名为 Path 的系统变量,新建一个新的环境变量 %MYSQL_HOME%\bin

 

三、安装mysql

1.初始化mysql

管理员运行cmd,进入bin路径下,输入

mysqld --initialize --console

  

执行完成后,会打印 root 用户的初始默认密码,比如: 

C:\mysql\mysql-8.2.0-winx64\bin>mysqld --initialize --console

2024-03-11T10:13:22.761487Z 0 [System] [MY-015017] [Server] MySQL Server Initialization - start.

2024-03-11T10:13:22.772911Z 0 [System] [MY-013169] [Server] C:\mysql\mysql-8.2.0-winx64\bin\mysqld.exe (mysqld 8.2.0) initializing of server in progress as process 22556

2024-03-11T10:13:22.777567Z 0 [Warning] [MY-013242] [Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.

2024-03-11T10:13:22.805070Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.

2024-03-11T10:13:23.985606Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.

2024-03-11T10:13:27.977275Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: V/tfKjvP6sDu

2024-03-11T10:13:33.448473Z 0 [System] [MY-015018] [Server] MySQL Server Initialization - end.

C:\mysql\mysql-8.2.0-winx64\bin>

注意!执行输出结果里面有一段:[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: V/tfKjvP6sDu 其中root@localhost:后面的“V/tfKjvP6sDu”就是初始密码(不含首位空格)。在没有更改密码前,需要记住这个密码,后续登录需要用到。 

 2.安装Mysql服务

在MySQL安装目录的 bin 目录下执行命令:

mysqld --install [服务名]

后面的服务名可以不写,默认的名字为 mysql。当然,如果你的电脑上需要安装多个MySQL服务,就可以用不同的名字区分了,比如 mysql5 和 mysql8。

安装完成之后,就可以通过命令net start mysql启动MySQL的服务了。通过命令net stop mysql停止服务。通过命令sc delete MySQL/mysqld -remove卸载 MySQL 服务

3.更改密码

在MySQL安装目录的 bin 目录下执行命令:

mysql -u root -p

这时候会提示输入密码,记住了上面初始化步骤时的密码,填入即可登录成功,进入MySQL命令模式。

在MySQL中执行命令:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';   

修改密码,注意命令尾的;一定要有,这是mysql的语法

这样,安装部署就完成了 !!!

四、检验

1.查看默认安装的数据库

show databases;

use mysql;

show tables;

mysql> show databases;

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| performance_schema |

| sys |

+--------------------+

4 rows in set (0.02 sec)

mysql> use mysql;

Database changed

mysql> show tables;

+------------------------------------------------------+

| Tables_in_mysql |

+------------------------------------------------------+

| columns_priv |

| component |

| db |

| default_roles |

| engine_cost |

| func |

| general_log |

| global_grants |

| gtid_executed |

| help_category |

| help_keyword |

| help_relation |

| help_topic |

| innodb_index_stats |

| innodb_table_stats |

| ndb_binlog_index |

| password_history |

| plugin |

| procs_priv |

| proxies_priv |

| replication_asynchronous_connection_failover |

| replication_asynchronous_connection_failover_managed |

| replication_group_configuration_version |

| replication_group_member_actions |

| role_edges |

| server_cost |

| servers |

| slave_master_info |

| slave_relay_log_info |

| slave_worker_info |

| slow_log |

| tables_priv |

| time_zone |

| time_zone_leap_second |

| time_zone_name |

| time_zone_transition |

| time_zone_transition_type |

| user |

+------------------------------------------------------+

38 rows in set (0.01 sec)

2.其他操作

管理员root的host是localhost,代表仅限localhost登录访问。如果要允许开放其他ip登录,则需要添加新的host。如果要允许所有ip访问,可以直接修改成“%”

创建用户:

CREATE USER 'xxh'@'%' IDENTIFIED WITH mysql_native_password BY 'xxh123!@#';

#(需要注意:mysql8.0加密方式修改了) #检查用户

select user, host, plugin, authentication_string from user\G;

授权远程数据库

#授权所有权限 

GRANT ALL PRIVILEGES ON *.* TO 'xxh'@'%';

#授权基本的查询修改权限,按需求设置

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'xxh'@'%';

查看用户权限

show grants for 'xxh'@'%';

 查看密码加密方式:

select user, host, plugin, authentication_string from user;

另外,如果需要新增账户,或者本机以外的其他人访问MySQL则还需要设置内置账户的host,具体可以参考:MySQL创建用户与授权 

 配置mysql的远程连接

只有配置了远程连接,那么才可以远程访问

1.登录mysql

mysql -u root -p

2.选择数据库 

 展示数据库 

show databases;

使用数据库 

use mysql;

3. 修改权限

查询用户表中的root用户的权限

select host,user from user;

默认都是localhost,将root的改为% 

修改用户表 

update user set host='%' where user='root';

赋予所有权限

mysql 8用以下写法

grant all privileges on *.* to 'root'@'%';

不行的话试试

grant all privileges on root.* to 'root'@'%';

flush privileges;

再次查询用户表中的root用户的权限 

exit;

常见报错 

1.启动报错

mysql启动时报错:Starting MySQL… ERROR! The server quit without updating PID file 

mac上mysql启动报错问题Unable to lock ./ibdata1 error: 35-CSDN博客

可能是/usr/local/mysql/data数据目录mysql用户没有权限(修改数据目录的权限) 

查看

解决方法 :给予权限,执行 “chown -R mysql.mysql /usr/local/mysql/data” 然后重新启动mysqld

sudo chmod -R 777 /usr/local/mysql/data/

也可以直接到文件夹中设置文件夹的权限!!!!

前往/usr/local/etc目录,看是否有my.cnf这么个文件,如果没有就新建,然后输入lower_case_table_names=2,保存

 

ps -eaf | grep mysql

 

sudo kill -9 145

使用这种方式杀掉所有的mysql进程,再次重启mysql应该就可以了。

如果还不行,重点来了,执行如下命令:

sudo launchctl unload -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

MAC MySql 安装(详细步骤)_mac 安装mysql-CSDN博客

https://www.cnblogs.com/laumians-notes/p/9069498.html

文章来源

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: