Linux安装Mysql

Linux安装Mysql–源码安装包

阿里云服务器,Aliyun Linux 2.1903 64位系统的Mysql 的安装以及远程访问设置

如果系统中没有自动配置yum网络源,Linux需要先配置网络yum源,确定yum能在线安装软件包,方便测试过程中安装部分依赖包。配置163网易提示的网络yum源参考博客 

http://www.cnblogs.com/zoulongbin/p/5773330.html

**提示:**Linux软件编译安装都需要依赖两个安装包 gcc gcc-c++ make 可使用 yum -y install gcc gcc-c++ make 在线安装

一,安装mysql

1、 检查本机是否有安装mysql数据库。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kKYDnzhw-1581860804999)(E:\08.考试\笔记\微信截图_20200214163558.png)]
2、卸载系统自带的mysql数据库。(卸载之前需要先把mysql数据库停止)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LR6e6APX-1581860805002)(E:\08.考试\笔记\微信截图_20200214163614.png)]

3、查看是否有残留mysql目录或文件。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-V0Hae0HR-1581860805003)(E:\08.考试\笔记\微信截图_20200214163623.png)]

4、在线yum安装编译所需要的工具和库。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-koP1AvfE-1581860805004)(E:\08.考试\笔记\微信截图_20200214163636.png)]

5、检查安装编译所需要的工具和库是否已经安装完成。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gVQ9dvEn-1581860805005)(E:\08.考试\笔记\微信截图_20200214163823.png)]

6、编译安装mysql前需要先创建mysql用户和组,创建mysql安装目录及存放目录。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bnqovm3c-1581860805006)(E:\08.考试\笔记\微信截图_20200214163835.png)]

7、一般CentOS系统都没有自带安装cmake编译工具,yum也不一定能安装cmake编译工具,所以,本测试机下载cmake源码编译工具和mysql源码安装包。(mysql 5.5以上版本(包含mysql 5.5版本)都需要使用cmake工具进行编译,不能使用./configure编译)

Cmake官网下载地址:

https://cmake.org/download/

mysql源码安装包下载地址:

**标注:**mysql 5.7以上版本(包含 mysql 5.7版本)在使用cmake进行编译时会提示错误需要boost软件包支持。

官网下载地址:https://dev.mysql.com/downloads/mysql/

其它下载地址:http://mirrors.sohu.com/mysql/ (本测试机使用的这个下载地址,下载mysql-5.5.63.tar.gz安装包)

8、把下载好的cmake-3.7.2.tar.gz 和 mysql-5.5.53.tar.gz 安装包上传到CentOS 6.5创建的文件夹 /home/mysql 进行解压。(解压命令 tar –zxvf cmake-3.7.2.tar.gz)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FbTaq3Pp-1581860805007)(E:\08.考试\笔记\微信截图_20200214163850.png)]

9、编译安装cmake编译工具。(先执行./configure检查配置,再执行make编译,最后执行make install 安装)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JMIVm2cR-1581860805008)(E:\08.考试\笔记\微信截图_20200214163901.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ksY1MZK0-1581860805012)(E:\08.考试\笔记\微信截图_20200214163913.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZZIYQAEb-1581860805014)(E:\08.考试\笔记\微信截图_20200214163924.png)]

10、编译安装mysql软件包。(先执行 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc 再执行 make 最后执行 make install )

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jDLF9Hk4-1581860805017)(E:\08.考试\笔记\微信截图_20200214163943.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-V7vQ8eat-1581860805019)(E:\08.考试\笔记\微信截图_20200214163955.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FZIlSNLg-1581860805020)(E:\08.考试\笔记\微信截图_20200214164007.png)]

说明:(主要用到三个参数值,网上截的图仅供参考,mysql安装路径以上面的操作为准)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4qTuWcnL-1581860805021)(E:\08.考试\笔记\微信截图_20200214164151.png)]

11、生成 mysql系统数据库,添加my.cnf配置文件软连接。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Dbsm5Fk2-1581860805022)(E:\08.考试\笔记\微信截图_20200214164206.png)] [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-K8BzQRj2-1581860805024)(E:\08.考试\笔记\微信截图_20200214164215.png)]

12、mysql添加系统开机自动启动功能。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oafvLb2x-1581860805025)(E:\08.考试\笔记\微信截图_20200214164229.png)] [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zYBRtH4z-1581860805026)(E:\08.考试\笔记\微信截图_20200214164240.png)]

13、把mysql服务添加系统环境变量。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-demP2Kni-1581860805026)(E:\08.考试\笔记\微信截图_20200214164255.png)]

14、启动mysql服务。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-02EtVX67-1581860805028)(E:\08.考试\笔记\微信截图_20200214164307.png)]

15、输入mysql –uroot -p 登录测试成功。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8JATgivm-1581860805029)(E:\08.考试\笔记\微信截图_20200214164317.png)]

二,修改密码(跳过密码验证)

16.修改密码

登录遇到ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using passwor:yes)问题

一般这个错误是由密码错误引起,解决的办法自然就是重置密码。

假设我们使用的是root账户。

16.1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:

#vim /etc/my.cnf(注:windows下修改的是my.ini)

在文档内搜索mysqld定位到[mysqld]文本段:
/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NcnxdWfX-1581860805030)(E:\08.考试\笔记\微信截图_20200214164327.png)]

保存文档并退出

16.2.接下来我们需要重启MySQL:

/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5flOCZwG-1581860805031)(E:\08.考试\笔记\微信截图_20200214164334.png)]

16.3.重启之后输入mysql即可进入mysql。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LZQXqDQ5-1581860805032)(E:\08.考试\笔记\微信截图_20200214164343.png)]

16.4.接下来就是用sql来修改root的密码

进入到终端当中,敲入 mysql -u root -p 命令然后回车,当需要输入密码时,直接按enter键,便可以不用密码登录到数据库当中

// 输入sql语句进行root用户的密码修改

mysql> update user set password=password(“你的新密码”) where user=“root”;

// 刷新权限

mysql> flush privileges;

//退出

mysql> quit

注意:如果在执行该步骤的时候出现ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 错误。则执行下 flush privileges 命令,再执行该命令即可。

到这里root账户就已经重置成新的密码了。

5.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。大功告成!

网上有很多关于这个问题的解决说明,很多刚接触的朋友可能比较迷惑的是在自己的平台上找不到my.cnf或者my.ini文件,如果你是Linux,使用如下方式可以搜索到:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t3Wtlybc-1581860805033)(E:\08.考试\笔记\微信截图_20200214164355.png)]

至于windows平台,去安装目录下找一下my.ini吧。

三.设置远程访问权限

17,设置mysql能够远程访问:

  1. 首先登录数据库: mysql -u root -h localhost -p password
  2. 打开mysql数据库: use mysql;
  3. 将host设置为%表示任何ip都能连接mysql,当然您也可以将host指定为某个ip:update user set host=’%’ where user=’root’ and host=’localhost’;
  4. 刷新权限表,使配置生效: flush privileges;

四.阿里云服务器上开放端口

18,开放阿里云Mysql的访问权限

​ [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Fe0EcfYp-1581860805035)(E:\08.考试\笔记\微信截图_20200214160320.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XlF1L4LJ-1581860805036)(E:\08.考试\笔记\微信截图_20200214160434.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZJOWI5WE-1581860805037)(E:\08.考试\笔记\微信截图_20200214160448.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A2lw0Vl5-1581860805038)(E:\08.考试\笔记\微信截图_20200214160508.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9E0o1tUK-1581860805039)(E:\08.考试\笔记\微信截图_20200214160733.png)]

五.使用SQLyog创建远程连接

18.打开图形化软件进行远程连接

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3QazBCVK-1581860805040)(E:\08.考试\笔记\微信截图_20200214162536.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1gmUCWuL-1581860805042)(E:\08.考试\笔记\微信截图_20200214163439.png)]

特殊操作:(报错后的操作)

#把mysql库文件链接到系统默认位置,以后类似PHP等软件就可以不指定mysql的库文件地址。

[root@ssticentos65 mysql]# ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

[root@ssticentos65 mysql]# ln -s /usr/local/mysql/include/mysql /usr/include/mysql

#创建mysql启动文件 mysql.sock 软链接。(mysql.sock作用是例如你无须定义连接host的具体IP地址,只要为空或localhost就可以,如果文件被删除掉就使用localhost用户连接不到mysql服务器。)

[root@ssticentos65 mysql]# mkdir /var/lib/mysql

[root@ssticentos65 mysql]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

1.第九步cmake 执行./configure时报错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lDmO2cts-1581860805043)(E:\08.考试\笔记\微信截图_20200214170125.png)]

解决方法:

error: Cannot find OpenSSL’s ,这个比较好解决,一定就是缺少包了。安装上即可,查了一下资料发现缺少了openssl包。在CentOs系统中可以通过YUM来安装:

yum install openssl openssl-devel

第十步保所预编译安装MySQL是报错

执行 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tFl7VVM9-1581860805044)(E:\08.考试\笔记\微信截图_20200214170147.png)]

解决方法

http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz

下载boost_1_59_0.tar.gz

在你编译的包文件下,比如说我的包在/home/mysql/mysql-5.7.29下创建一个名为boost的文件夹mkdir -p /home/mysql/mysql-5.7.29/boost

将boost_1_59_0.tar.gz复制到新建的文件夹下:cp boost_1_59_0.tar.gz /home/mysql/mysql-5.7.29/boost

解压boost_1_59_0.tar.gz:tar -zxvf boost_1_59_0.tar.gz

继续cmake,加上选项-DWITH_BOOST=./boost :

cd /home/mysql/mysql-5.7.29

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc DWITH_BOOST=./boost

这里的boost被定位在:当前你所在文件夹的boost文件下,.代表当前路径。

Linux安装Mysql–rpm,yum在线安装

一、安装mysql数据库。

(1)下载mysql源安装包:wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

(2)安装mysql源:yum localinstall mysql57-community-release-el7-8.noarch.rpm

若结尾出现complete!,则说明MySQL源安装完成

(3)检测是否安装完成:yum repolist enabled | grep “mysql.-community.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gS5DwTB2-1581860805045)(E:\08.考试\笔记\微信截图_20200214171749.png)]

(4)安装mysql:yum install mysql-community-server

若结尾出现Complete!, 则MySQL安装完成

(5)设置开启启动mysql服务:systemctl enable mysqld

(6)查看安装的mysql版本:rpm -aq | grep -i mysql

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ludxwlYz-1581860805046)(E:\08.考试\笔记\微信截图_20200214171757.png)]

(7)启动MySQL服务:systemctl restart mysqld

二,修改密码

(8)查看MySQL初始密码:grep ‘A temporary password’ /var/log/mysqld.log

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nsiF2wqn-1581860805047)(E:\08.考试\笔记\微信截图_20200214171815.png)]

(9)更改MySQL密码:mysqladmin -u root -p’旧密码’ password ‘新密码’

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UUh5arPH-1581860805049)(E:\08.考试\笔记\微信截图_20200214171822.png)]

这里更改密码出了问题,更改失败,这是因为密码太过简单的原因。有两个接解决方法:

方法一:把密码设置复杂点(这是最直接的方法)

方法二:关闭mysql密码强度验证(validate_password)

编辑配置文件:vim /etc/my.cnf, 增加这么一行validate_password=off

编辑后重启mysql服务:systemctl restart mysqld

三,设置mysql能够远程访问:

  1. 首先登录数据库: mysql -u root -h localhost -p password
  2. 打开mysql数据库: use mysql;
  3. 将host设置为%表示任何ip都能连接mysql,当然您也可以将host指定为某个ip:update user set host=’%’ where user=’root’ and host=’localhost’;
      编辑配置文件:vim /etc/my.cnf, 增加这么一行validate_password=off

编辑后重启mysql服务:systemctl restart mysqld

三,设置mysql能够远程访问:

  1. 首先登录数据库: mysql -u root -h localhost -p password
  2. 打开mysql数据库: use mysql;
  3. 将host设置为%表示任何ip都能连接mysql,当然您也可以将host指定为某个ip:update user set host=’%’ where user=’root’ and host=’localhost’;
  4. 刷新权限表,使配置生效: flush privileges;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值