# Windows 下安装 MySQL5.7.30 ## 方法一:程序安装 > 参考: > * https://blog.csdn.net/Timelessheart/article/details/106267738 ### 1.下载 [社区版下载地址](https://dev.mysql.com/downloads/) ![img](imgs/Image_20200803092859.jpg) https://dev.mysql.com/downloads/installer/ ![img](imgs/Image_20200803093320.jpg) https://downloads.mysql.com/archives/installer/ ![img](imgs/Image_20200803093417.jpg) ### 2.安装 > Tip:基本上默认安装就可以,下面截图仅做参考。 ![image-20200806094959481](imgs/image-20200806094959481.png) ![img](./imgs/20200521210616716.png) 选择 Server only ![](./imgs/20200521210500204.png) 如果出现 MySQL Server,则选中,并点击【execute】,安装完成之后单选框变成绿色 ![](./imgs/20200521210933700.png) ![](./imgs/20200521214146450.png) ![](./imgs/20200521214539671.png) ![](./imgs/2020052121460068.png) ![](./imgs/20200521214625155.png) ![](./imgs/20200521214651454.png) ![](./imgs/20200521214724903.png) ![](./imgs/2020052121475463.png) ![](./imgs/20200521214827173.png) ![](./imgs/20200521214851531.png) ![](./imgs/20200521214911607.png) ![](./imgs/20200521214938192.png) ![](./imgs/20200521215001534.png) ![](./imgs/20200521215036490.png) ![](./imgs/20200521215442412.png) ![](./imgs/20200521215821331.png) ![](./imgs/20200521215836422.png) 3. 测试 确认MySQL安装成功的唯一标志 1.在系统服务中能找到MySQL5.7.30 2.能正常启动和停止服务 ![](./imgs/20200521220126113.png) ## 方法二:压缩包安装 > 参考: > > * https://blog.csdn.net/qq_40277973/article/details/81517479 ### 1. 下载解压 [MySQL社区版下载](https://dev.mysql.com/downloads/) ![image-20200807160411904](imgs/image-20200807160411904.png) https://downloads.mysql.com/archives/ ![image-20200807160502509](imgs/image-20200807160502509.png) https://downloads.mysql.com/archives/community/ ![image-20200807161028242](imgs/image-20200807161028242.png) ### 2. 添加配置文件 在mysql解压目录下,创建 my.ini 文件,并写入以下内容 ```ini [mysqld] basedir ="D:\mysql\mysql-8.0.12-winx64" datadir ="D:\mysql\mysql-8.0.12-winx64\data" port=3306 server_id =10 character-set-server=utf8 character_set_filesystem=utf8 [client] port=3306 default-character-set=utf8 [mysqld_safe] timezone="CST" [mysql] default-character-set=utf8 ``` ### 3. 安装服务 以管理员身份打开 cmd,进入 `mysql安装目录\bin `,执行以下命令 ```shell # 添加名为mysql的windows服务(默认开机启动) # windows服务名称不区分大小写 mysqld --install mysql ``` > * *添加名为mysql的windows服务(手动启动):`mysqld --install-manual mysql`* > > * *删除名为mysql的windows服务:`mysqld --remove mysql`* ### 4. 初始化数据库 接着在 `mysql安装目录\bin `执行以下命令 ```shell mysqld --initialize --user=root --console ``` ### 5. 启动Mysql ```shell # 启动服务 net start mysql # 关闭服务 net stop mysql ``` # Centos7 下安装 MySQL5.7.30 ## 方法一:yum 安装 > 参考: > * https://blog.csdn.net/Mrqiang9001/article/details/101377149 ### 1. 卸载已安装 mysql ```shell #查询mysql、mariadb软件包并删除 rpm -qa | grep mysql | xargs rpm -e --nodeps rpm -qa | grep mariadb | xargs rpm -e --nodeps ``` ### 2. 安装yum源 #### 2.1 获取yum源 在这个页面 https://dev.mysql.com/downloads/repo/yum/ 中,根据操作系统版本,选择【Download】 ![Image_20200714112216.jpg](./imgs/Image_20200714112216.jpg) 右键复制 rpm 链接 ![Image_20200714112706.jpg](./imgs/Image_20200714112706.jpg) #### 2.2 安装yum源 ```shell #安装yum源 rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm #安装 yum-utils 工具 yum install -y yum-utils ``` #### 2.3 启用指定版本 ```shell # 查看所有的msyql yum repolist all | grep mysql ``` 如图: ![img](./imgs/Image_20200714113211.jpg) ```shell # 禁用80版本 yum-config-manager --disable mysql80-community # 启用57版本 yum-config-manager --enable mysql57-community ``` ### 3. 安装MySQL ```shell yum install -y mysql-community-server ``` 待命令执行结束,安装即完成 ### 4. 启动mysql服务 ```shell #启动 mysql 服务: service mysqld start #查看 mysql 服务状态: service mysqld status ``` 验证 `mysql -v` ### 5. 初始化 ```shell #查看初始密码 grep 'temporary password' /var/log/mysqld.log #修改密码 mysql -u root -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!'; #授权远程连接,让任何主机都能以root登录 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourNewPassword' WITH GRANT OPTION; #刷新权限 FLUSH PRIVILEGES; ``` 其中第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样 *.*的话表示所有到数据库下到所有表都允许访问; ‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问; >注意:如果是阿里云服务器,还去阿里账号,给服务器实例添加一个安全组规则,运行外网地址访问3306端口。 ### 6. 设置开机启动 CentOS 7 使用 systemctl 命令工具操作服务: ```shell #开机启动 systemctl enable mysqld ``` ## 方法二:本地安装 > Tip: 由于使用yum无法指定具体的小版本,比如 5.7.30,却想要 30 > 参考: > * https://www.jianshu.com/p/ee018b20a6e6 ### 1. 卸载已安装的 ```shell #查询mysql、mariadb 软件包,并删除 rpm -qa | grep mysql | xargs rpm -e --nodeps rpm -qa | grep mariadb | xargs rpm -e --nodeps ``` ### 2. 下载解压安装 * 下载 mysql 压缩包 https://downloads.mysql.com/archives/community/ * [百度网盘-mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz 提取码: 2208](https://pan.baidu.com/s/1TrpV5p0TG4rhsaQ7H_aOBg?pwd=2208) ![image-20200808192230896](imgs/image-20200808192230896.png) * 解压 ```shell tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local ``` 解压后的文件夹名太长,重命名一下 ```shell mv /usr/local/mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql ``` ### 3. 配置用户 * 创建用户组mysql ```shell groupadd mysql ``` * 创建用户,-r参数表示mysql是系统用户,不可用于登录系统,创建用户mysql并将其添加到用户组mysql中 ```shell useradd -r -g mysql mysql ``` * 修改mysql目录的拥有者和权限组 ```shell chown -R mysql:mysql /usr/local/mysql ``` ### 4. 创建配置文件 ```shell vim /etc/my.cnf ``` 配置内容如下,也可以添加其他需要的配置: ```ini [client] port = 3306 socket = /tmp/mysql.sock [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8' basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/tmp/mysql.sock log-error=/var/log/mysqld.log pid-file=/usr/local/mysql/data/mysqld.pid #不区分大小写 lower_case_table_names = 1 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION max_connections=5000 default-time_zone = '+8:00' ``` 手动创建配置的目录 ```shell touch /var/log/mysqld.log chmod 777 /var/log/mysqld.log chown mysql:mysql /var/log/mysqld.log ``` ### 5.初始化数据库 先安装这个东西,否则初始化可能会报错(不用好像也可以) ```shell yum install libaio ``` 最后初始化数据库(这个过程有点慢) ```shell /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US ``` 最后的最后,查看一下初始密码 ```shell grep 'temporary password' /var/log/mysqld.log ``` 最后一行“root@localhost”后面的就是初始密码。 ### 6.启动服务 启动服务 ```shell /usr/local/mysql/support-files/mysql.server start Starting MySQL. [ OK ] ``` 将mysql目录添加到环境变量中 `vim /etc/profile` ``` #mysql export PATH=/usr/local/mysql/bin/:$PATH ``` 执行 `source /etc/profile` 使配置生效 进入mysql ```shell mysql -uroot -p Enter password: ``` 修改初始密码 ```shell mysql> alter user user() identified by "dx3906"; ``` 授权远程登录(让任意主机都可以以root身份登录) ```shell mysql> use mysql; mysql> update user set host='%' where user='root'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) ``` 也可以这样授权: ```shell # 这里的密码最好和前面设置的一致 mysql>grant all privileges on *.* to root@'%' identified by 'dx3906'; mysql> flush privileges; ``` 其中第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样 *.*的话表示所有到数据库下到所有表都允许访问; ‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问; >注意:如果是阿里云服务器,还去阿里账号,给服务器实例添加一个安全组规则,运行外网地址访问3306端口。 ### 7.设置开机启动 ```shell cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig mysqld on ``` ### 8.mysql服务命令 ```shell service mysqld status|start|stop|restart ``` 查看mysqld服务运行状态 ```shell [root@izm5e266m87jhndvihw6tuz support-files]# service mysqld status MySQL running (21213) [ OK ] ```