Linux腾讯云下安装mysql

百度云盘下载地址https://pan.baidu.com/s/1MqUEdeqZuQbq-veLuVItQQ

将下载好的mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz包上传到/home/user/software文件夹中。 

1、移动文件到指定目录 

 [root@centos software]#  mv mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz /usr/local/

2、进入移动到的目录,解压压缩文件 

[root@centos software]# cd /usr/local/  

[root@centos local]# tar -zxvf mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz

3、修改解压后的文件名 
 [root@centos local]# mv mysql-5.7.14-linux-glibc2.5-x86_64 mysql

三.安装运行mysql所需的包

方法1:(本人用的是这种方法)

 [root@centos downloads]# yum search libaio 
 [root@centos downloads]# yum install libaio

方法2:

(1)下载libaio的rpm包,并上传 
将该rpm包下载,并用SSH Secure File Transfer Client上传到云服务器上,同样上传到/home/user/downloads文件夹中,网站为:https://pkgs.org/download/libaio 
Linux腾讯云下安装mysql_第1张图片

(2)进入/home/user/downloads,执行rpm的安装命令 
 [root@centos downloads]# rpm –ivf libaio-0.3.109-13.el7.x86_64.rpm

四.安装及配置mysql

1、建立用户 
 [root@centos downloads]# groupadd mysql 添加一个mysql用户组 
 [root@centos downloads]# useradd -r -g mysql -s /bin/false mysql 添加一个mysql用户 
备注:设置-s /bin/false表示mysql不能作为登入用户

2、建立存放数据的目录 
 [root@centos local]# cd mysql 进入mysql目录 
 [root@centos mysql]# mkdir data 建立作为存放数据的目录

3、权限:(mysql用户)修改mysql安装目录的读写权限和给mysql用户赋予权限 
 [root@centos mysql]# chmod 770 data 给data文件夹的所有者和同组的用户赋予读、写和执行的权限,其他用户没有任何权限 
 [root@centos mysql]# chown -R mysql . 更改当前目录的所有者为mysql用户,“.”表示当前目录 
 [root@centos mysql]# chgrp -R mysql . 更改当前目录的用户组为mysql,“.”表示当前目录

4、复制support-files/mysql.server文件到/etc/init.d/mysql中 
 [root@centos mysql]# cp support-files/mysql.server /etc/init.d/mysql

5、修改配置文件:/etc/my.cnf 
 [root@centos mysql]# cd /etc/ 
 [root@centos etc]#vi my.cnf 修改或添加以下内容 
basedir=/usr/local/mysql 
datadir=/usr/local/mysql/data 
socket=/tmp/mysql.sock

6、修改配置文件:/etc/profile 
 [root@centos etc]#vi /etc/profile 配置环境变量 添加如下内容 

#加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了
export PATH=$PATH: /usr/local/mysql/bin

7、使配置及时生效 
 [root@centos etc]#./etc/profile 使配置及时生效 
PS: 
[root@centos etc]#source /etc/profile 与 [root@centos etc]#./etc/profile效果一样。 
这样,可用service mysql start来启动mysql数据库。

8、初始化数据库(要进行上面3~7几步才能到这里) 
 [root@centos mysql]#bin/mysqld –initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 
一定要注意最后一行的[Note]信息: 
[Note] A temporary password is generated for root@localhost: )#Fzu)-oj6f8 
这里生成的初始密码在首次以root用户登入时需要用到。 
这里写图片描述
 [root@centos mysql]#bin/mysql_ssl_rsa_setup –basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 
Linux腾讯云下安装mysql_第2张图片

9、将mysql加入到可控制启动服务的文件夹内(易出错) 
(1)建立日志文件 
 [root@centos mysql]# cd /var/log 
 [root@centos log]# mkdir mariadb #作为存放数据库运行日志的文件夹 
(2)将mysql加入到可控制启动服务 
 [root@centos log]# cd /usr/local/mysql/ 
 [root@centos mysql]# 
bin/mysqld_safe –user=mysql –basedir=/usr/local/mysql --datadir=/usr/local/mysql/data & 
将mysql加入到可控制启动服务的文件夹内,并命名mysql,即service可控制的服务名,届时可用service mysql start|stop控制启动及关闭mysql

10、配置开机启动mysql服务 
[root@centos etc]# chkconfig –add mysql 
[root@centos etc]# chkconfig –level 2345 mysql on

五.登录mysql(首次登录)

在此之前,要先启动mysql数据库:service mysql start

1、登录mysql 
[root@centos etc]# mysql -u root -p 
Enter password:输入之前生成的临时密码

2、重设密码:(必须先重设密码) 
mysql> SET PASSWORD = PASSWORD(‘123456’); 
或者 
mysql> UPDATE user SET Password=PASSWORD(‘newpassword’) where USER=’root’;

3、刷新权限 
mysql> FLUSH PRIVILEGES;

4、退出mysql 
mysql> quit

六.安装过程中可能遇到的错误集合

(一)、mysql无法启动Couldn’t find MySQL server (/usr/bin/mysqld_safe)”

方法1:修改配置文件/etc/my.cnf

 复制support-files/mysql.server 
[root@centos etc]# cp support-files/mysql.server /etc/init.d/mysql

 到/etc目录下配置my.cnf 
[root@centos etc]# cd /etc/ 
[root@centos etc]#vi my.cnf #修改或添加以下内容 
basedir=/usr/local/mysql 这个一定要输入准确,启动的路径是在这里配置的。 
datadir=/usr/local/mysql/data 
socket=/tmp/mysql.sock

方法2:删除配置文件/etc/my.cnf(未验证) 
[root@centos etc]#rm /etc/mysql/my.cnf

(二)、MySQL: Starting MySQL….. ERROR! The server quit without updating PID file

1、问题 
 查看数据库状态时:[root@centos etc]# /etc/rc.d/init.d/mysql status或者[root@centos etc]#service mysql status 
出现以下错误:MySQL is not running, but lock file (/var/lock/subsys/mysql[FAILED] 
启动mysql时:[root@centos etc]# /etc/rc.d/init.d/mysql start或[root@centos etc]#service mysql start 
出现以下错误:Starting MySQL…The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid). [FAILED]

2、原因 
没有初始化权限表

3、解决办法

方法1:重启 
[root@VM_38_129_centos /]# reboot

方法2: 
(1)进入mysql安装目录 
(2)修改权限 
(3)重新初始化数据库

方法2例子 
 [root@VM_38_129_centos mysql]# rm -rf data/ 先删除原来的data目录 
 [root@VM_38_129_centos mysql]# mkdir data 再新建一个 
 [root@VM_38_129_centos mysql]# chmod 770 data 给data目录所有者和所在组赋予读写的权限 
 [root@VM_38_129_centos mysql]# chown -R mysql . 
 [root@VM_38_129_centos mysql]# chgrp -R mysql . 
 [root@VM_38_129_centos mysql]# bin/mysqld –initialize –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data 
重新初始化权限表,初始密码改了,要记得。 
这里写图片描述
 [root@VM_38_129_centos mysql]# bin/mysql_ssl_rsa_setup –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data 
Linux腾讯云下安装mysql_第3张图片

(三)ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (111)

安装完成后mysql是没有启动的,运行mysql命令会提示如下错误: 
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2) 
可使用如下命令启动MySQL: 
service mysql start 
或者使用如下命令: 

/etc/init.d/mysql start

然后远程连接

grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

flush privileges;  



你可能感兴趣的:(linux)