怎么样在linux上安装mysql?

怎么样在linux上安装mysql?

所有平台的MySQL下载地址为: MySQL 下载. 挑选你需要的 MySQL Community Server 版本及对应的平台。

MySQL - MySQL服务器。你需要该选项,除非你只想连接运行在另一台机器上的MySQL服务器。
MySQL-client - MySQL 客户端程序,用于连接并操作Mysql服务器。
MySQL-devel - 库和包含文件,如果你想要编译其它MySQL客户端,例如Perl模块,则需要安装该RPM包。
MySQL-shared - 该软件包包含某些语言和应用程序需要动态装载的共享库(libmysqlclient.so*),使用MySQL。
MySQL-bench - MySQL数据库服务器的基准和性能测试工具

安装步骤:
官方网站提供两种安装包下载,一种是让rpm的,一种是tar的,两种方式都可以,请自行选择.

首先介绍rpm包的安装步骤:
将下载的文件传到服务器上,然后放一个文件夹中。
进入到文件中执行以下命令:

[root@host]# rpm -i MySQL-5.0.9-0.i386.rpm

MySQL-5.0.9-0.i386.rpm为你下载的文件的名字。

以上安装mysql服务器的过程会创建mysql用户,并创建一个mysql配置文件my.cnf。
你可以在/usr/bin和/usr/sbin中找到所有与MySQL相关的二进制文件。所有数据表和数据库将在/var/lib/mysql目录中创建

tar包安装过程:
mysql下载地址

进去点击community,然后点击Mysql Community Server
这里写图片描述

如图中1的位置为选择之前版本,根据需要选择自己合适的版本,
2的位置为不同系统下的linux版本,选择完将滚动条拉到最底下,进行下载。

下载好后,将tar包传输到服务器上。

1.解压

#解压
tar -zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
#复制解压后的mysql目录
cp -r mysql-5.6.33-linux-glibc2.5-x86_64 /usr/local/mysql


2.添加用户和用户组

#添加用户组
groupadd mysql
#添加用户mysql 到用户组mysql
useradd -g mysql mysql


3.安装

cd /usr/local/mysql/ 
#创建数据文件夹
mkdir ./data/mysql
#修改文件权限
chown -R mysql:mysql ./
#安装并指定用户和data文件夹位置
./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql
#复制mysql到服务自动启动里面
cp support-files/mysql.server /etc/init.d/mysqld
#修改权限为755 也就是root可以执行
chmod 755 /etc/init.d/mysqld
#复制配置文件到etc下,因为默认启动先去etc下加载配置文件
cp support-files/my-default.cnf /etc/my.cnf

#修改启动脚本
vi /etc/init.d/mysqld

#修改项:
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data/mysql

#启动服务
service mysqld start

#测试连接
./mysql/bin/mysql -uroot

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


#启动mysql
service mysqld start
#关闭mysql
service mysqld stop
#重新启动mysql
service mysqld restart
#查看运行状态
service mysqld status


4.问题
安装完成后自行进行root用户密码修改和相关用户配置。

完成后用工具远程连接报错,是由于没有给远程连接的用户权限问题。

解决1:更改 ‘mysql'数据库‘user'表‘host'项,从‘localhost'改成‘%'。

use mysql;
select 'host' from user where user='root'; 
update user set host = '%' where user ='root';
flush privileges;


解决2:直接授权

GRANT ALL PRIVILEGES ON *.* TO ‘root'@'%' IDENTIFIED BY ‘youpassword' WITH GRANT OPTION;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持路饭。