linux下安装mysql5.7.19_linux手工编译安装mysql5.7.19

1.安装条件:

官网下载源码包 ("https://dev.mysql.com/downloads/mysql/")

c4d75e86d70d

c4d75e86d70d

2.下载完成后将mysql-boost-5.7.19.tar.gz上传到虚拟机上(vmtools或者ftp等)然后进行编译安装

# tar zxvf mysql-boost-5.7.19.tar.gz

这边编译使用cmake工具 (其功能类似./configure 生成makefile文件)

#yum install cmake -y

#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_DATADIR=/var/lib/mysql/data -DWITH_BOOST=boost

编译mysql会遇到一些问题 可以通过yum解决

我白机安装后遇到的问题如下:

1)、无法找到GIT

#yum install git -y

2)The CXX compiler identification is unknown

#yum install gcc gcc-c++ -y

3)Curses library not found

#yum install ncurses ncurses-devel -y

(这个编译时间很长 双核编译了40+分钟 还会有失败的情况)

编译完成之后执行

#make && make install

即可完成安装(默认的配置文件在/etc/my.cnf)

3.创建mysql用户

#useradd mysql -M -s /sbin/nologin

(-M代表不生成 Home目录,-s ,代表不允许登录。)

4.将脚本文件拷贝到init.d目录下 方便以服务方式启动

#cp /usr/local/mysql/support-files/mysql.server    /etc/init.d/mysqld

#vim /etc/init.d/mysqld  =>加上一句chkconfig mysqld on(这样就能以service的方式启动了)

5.修改配置文件

c4d75e86d70d

分别是错误日志目录 数据存放目录 socket文件目录 pid目录

#chown -R mysql:mysql /var/lib/mysql(说明这个mysql文件夹,需要让mysql用户有权限访问)

6.初始化mysql

#cd /usr/local/mysql/bin(mysql安装目录)

#./mysqld --initialize --user=mysql --basedir=/var/lib/mysql --datadir=/var/lib/mysql/data

初始化完后会出现一组随机密码给root用户

#vi /var/lib/mysql/mysql-error.log

c4d75e86d70d

记下这个密码 方便登陆

7.启动mysql服务

#service mysqld start

8.使用客户端连接mysql

安装完成之后bin目录下有个mysql可执行程序就是客户端执行程序了

这边可以通过cd bin 然后./mysql -u root -p来启动客户端(麻烦)

推荐建立软连接或者加到环境变量中

1)建立软连接 :

ln /usr/local/mysql/bin/mysql 你喜欢的目录/名字

然后就可以在你的位置./名字 -u root -p

2)加入环境变量中:

#vim /etc/profile

随便找个位置加入

export PATH=/usr/local/mysql/bin:$PATH

或者export MYSQL_PATH=/usr/local/mysql/bin

export PATH=$MYSQL_PATH:$PATH

wq保存之后执行source /etc/profile使环境变量生效

然后就可以在任意位置mysql -u root -p了

执行 mysql -u root -p 之后输入错误日志给我们的随机密码会出现一个错误Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

解决方案:

1)修改配置文件

#vim /etc/my.cnf

加入[mysql] (这个代表客户端配置)  (推荐)

[mysql]

socket=/var/lib/mysql/mysql.sock

2).使用tcp方式连接

#mysql -u root --protocol=tcp -p

9.重置root账号密码

登陆root之后

mysql>ALTER USER USER() IDENTIFIED BY '123';

10.使用本地可视化工具连接虚拟机mysql服务

grant all privileges on 表名 to 用户名@'IP地址' identified by ‘密码’;

或grant all on 表名 to 用户名@'IP地址' identified by ‘密码’

如果要所有,表以及所有IP均可

grant all on *.* to localuser@'%' identified by '123'

flush privileges; 刷新权限

c4d75e86d70d

c4d75e86d70d

连接成功!

如果连接失败检查防火墙

或者直接

#iptables -I INPUT -p tcp --dport 3306 -j  ACCEPT

#iptables-save

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值