mysql engine=archive partition_详尽的Mysql安装过程 讲解

本文详细介绍了在Linux平台上如何从源代码安装MySQL,包括下载源码、解压、配置、编译、安装、设置服务、启动与停止MySQL,并讲解了如何修改远程登录权限以及添加用户的步骤。
摘要由CSDN通过智能技术生成

安装步骤:

inux平台mysql source安装的安装及配置步骤

1、下载MySQL的sourcecode

d95dd90415d7231ace2862181633da04.png

51a29cf53793661814a213ff134555e3.png

选择sourcecode下拉列表进入到如下页面:

e3a28561bc088988e20d84428bf67a53.png

点击Generic Linux (Architecture Independent), Compressed TAR Archive,进入

5f89c1bfea26cfa69e50fa5263e1a350.png

选择

进行下载

2、安装MySQL

解压mysql5 的安装包:

[root@niutian365 local]# tar –zxvf mysql-5.5.16.tar.gz

进入解压后的安装包

:[root@niutian365 local]# cd mysql-5.5.16

3、选择root用户进入,建立mysql用户组和用户名:

建立mysql用户组:groupadd mysql

建立mysql用户并将mysql用户加到mysql用户组中: useradd -g mysql mysql

4、创建/usr/mysql/mysql和/usr/mysql/data和/usr/mysql/log目录

mkdir /usr/mysql/mysql

mkdir /usr/mysql/data

cmake 编译sourcecode

cmake -DCMAKE_INSTALL_PREFIX=/mysql/mysql

-DMYSQL_DATADIR=/mysql/mysql/data

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_FEDERATED_STORAGE_ENGINE=1

-DWITH_PARTITION_STORAGE_ENGINE=1

-DENABLED_LOCAL_INFILE=1

-DMYSQL_UNIX_ADDR=/mysql/mysql/data/mysql.sock

5、复制配置文件到/etc下

[root@niutian365 local]#vi /etc/my.cnf

修改

[mysqld]

basedir=/home/mysql/mysql

datadir=/home/mysql/data

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

[mysqld_safe]

log-error=/home/mysql/log/mysqld.log

pid-file=/home/mysql/log/mysqld.pid

6、修改文件的文件主:

chown –R mysql:mysql /home/mysql/log/

chown –R mysql:mysql /var/lib/mysql

运行[root@niutian365 local]#./usr/local/mysql/bin/mysql_install_db

在这一步中可能会发生错误,查看错误原因,如果是由于权限的问题则需要将父目录拥有者改成mysql:mysql,使用chown –R mysql:mysql XXX

7、运行mysql

进入mysql的bin目录,运行sh mysqld_safe

如果不能正常运行,可以查看log目录下的mysqld.log,查看错误信息,然后做出相应的修改。

8、将mysql注册为服务

将mysql源代码目录的support-files/mysql.server拷贝至/etc/init.d/下,重命名为mysqld

安装chkconfig: apt-get install chkconfig

运行chkconfig -add mysql注册服务

运行 mysql start开启服务

运行 mysql stop关闭服务

修改远程登录mysql权限,现在提供两种支持远程登录的方法:

1.改表法。其中在user表中的host那一列保存的是user允许的用户登录的位置信息,通过修改这一列的数据来修改mysql的远程登录,使用如下命令进入mysql,mysql –u root –p 输入密码(默认为空)第一次进入到数据库系统。

选择数据库:mysql> use mysql;

如下图所示执行sql命令:

5ce8ae8734c539be81a9de1e2585c203.png

由上图可以看到,mysql只允许127.0.0.1和localhost,以及localhost.localdomain的机器以root身份登录到mysql数据库中,下面我们做如下更改:

40c6204e825e7ac46f74d9fbb3788ed4.png

上面的error是有host是唯一属性导致的错误,可以不用理会,现在我们已经改好了mysql远程登录的配置,一定要主要通过如下命令是上述做的改动生效。

mysql> FLUSH PRIVILEGES;

好了现在可以在其他机器上进行远程登录mysql了。

2.授权法。

使用如下命令:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '111111' WITH GRANT OPTION;是root用户在任意机器上以111111密码访问,上面的执行结果如下:

395c5f34ef816dd2dfb0833c6e4aa96a.png

实际上,在user表中添加了一行,如上面标注部分。如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码,执行如下语句:

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

Mysql修改密码:

UPDATE user SET password=password('111111') where user='root';

mysql> FLUSH privileges;

如下图:

be40e285a562dc0719e49b7557bfa50e.png

请注意,此密码是经过hash后的密码,不能用原密码如mysql> update user set password = 111111 where user = 'root' ;这样是不正确的。

Mysql添加用户:

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

Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

以上命令是创建sphinx用户远程登录mysql,密码是111111。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值