linux 正确安装 mySQL全过程


操作系统:CentOS 7.2  64位

mySQL版本:mysql-5.6.35

 

安装过程:

(1)首先从mysql官网下载 MySQL Community Server 安装包。

linux 正确安装 mySQL全过程_mysql

选择对应的版本(32位或者64位):

linux 正确安装 mySQL全过程_mysql_02

 

本文以64位安装包为例! MySQL-5.6.35-1.linux_glibc2.5.x86_64.rpm-bundle.tar

 

(2)解压安装包:

tar  -xvf  MySQL-5.6.35-1.linux_glibc2.5.x86_64.rpm-bundle.tar

 

查看解压之后的文件:

MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm
MySQL-client-5.6.35-1.linux_glibc2.5.x86_64.rpm      

MySQL-shared-5.6.35-1.linux_glibc2.5.x86_64.rpm
MySQL-devel-5.6.35-1.linux_glibc2.5.x86_64.rpm       

MySQL-shared-compat-5.6.35-1.linux_glibc2.5.x86_64.rpm
MySQL-embedded-5.6.35-1.linux_glibc2.5.x86_64.rpm    

MySQL-test-5.6.35-1.linux_glibc2.5.x86_64.rpm

其中server和client就是我们需要安装的rpm包!

 

(3)安装之前的清理工作

系统已经安装了其他版本的mysql-libs包和mysql数据库文件导致不兼容。同过以下命令清除:

yum remove mysql-libs

然后,还要详细检查卸载MySQL安装的所有文件,否则在后续安装发生各种错误:参见 CentOS下MySQL的彻底卸载

 

(4)安装mysql-server

rpm -ivh  MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm --nosignature  

注意:如果报如下错误,需要加上 --nosignature  

warning: MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

如果没有报错,可以不用加 --nosignature

 

(5)安装mysql-client

rpm -ivh  MySQL-client-5.6.35-1.linux_glibc2.5.x86_64.rpm   --nosignature   (同上)

 

(6)运行服务

service mysql start 

 

(7)设置mysql的 root 用户密码

首先关掉mysql服务:/etc/init.d/mysql stop

安全模式启动mysql:mysqld_safe --skip-grant-tables &   (&,表示在后台运行)

依次输入下面的命令:

# mysql
mysql> use mysql;
mysql> UPDATE user SET password=password("123456") WHERE user='root';   
mysql> flush privileges;
mysql> exit; 

##其中的密码值就是root用户的登录密码。                        
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。

 

(8)使用 root 用户 登录mysql,需要输入密码!

mysql -u root -p

第一次登录之后需要更改root用户的密码,不然任何操作都会报错:

ERROR 1820 (HY000): You must SET PASSWORD before executing this statement 

使用下面命令修改密码:

mysql> set password=PASSWORD('123456');  

 

然后创建一个mysql用户:

mysql> CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';

其中 myuser是将要创建的用户名,mypassword是对应的登录密码。

 

运行下列命令,验证帐号是否创建成功​:
mysql> SELECT host, user, password FROM mysql.user WHERE user='myuser';

 

(9)赋予MySQL用户权限

 

一个新建的MySQL用户没有任何访问权限,这就意味着你不能在MySQL数据库中进行任何操作。你得赋予用户必要的权限。以下是一些可用的权限:

●ALL:所有可用的权限

●CREATE:创建库、表和索引

●LOCK_TABLES:锁定表

●ALTER:修改表

●DELETE:删除表

●INSERT:插入表或列

●SELECT:检索表或列的数据

●CREATE_VIEW:创建视图

●SHOW_DATABASES:列出数据库

●DROP:删除库、表和视图

运行以下命令赋予"myuser"用户特定权限。



例如,为所有数据库/表赋予 CREATE 和 INSERT 权限:

mysql> GRANT CREATE, INSERT ON *.* TO 'myuser'@'localhost';


验证给用户赋予的全权限:

mysql> SHOW GRANTS FOR 'myuser'@'localhost';

 

将全部的权限赋予所有数据库/表:

mysql> GRANT ALL ON *.* TO 'myuser'@'localhost';

 

创建和设置一个MySQL用户最后的一个重要步骤:

mysql> FLUSH PRIVILEGES;

如此一来更改便生效了。

(具体参见:​​http://blog.sina.com.cn/s/blog_c2ab3e4b0102vox3.html​​)

 

(10)赋予用户远程登录mysql的权限

 

MySQL​默认root用户只能本地访问,不能远程连接管理mysql数据库,Linux如何开启mysql远程连接?设置步骤如下:
首先需要通过root用户登录mysql。

然后为myuser用户设置远程登录的权限。

mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'  IDENTIFIED BY  'mypassword'  WITH GRANT OPTION;

这条命令是授与myuser用户从任何其它主机发起的访问(通配符%),密码是mypassword。

 

然后执行下面的命令使更改生效:


mysql> 

FLUSH PRIVILEGES;


 

至此,linux上面安装mysql的全过程完毕!




linux 正确安装 mySQL全过程_mysql数据库_03