随笔 - 10, 文章 - 1, 评论 - 9, 引用 - 0
数据加载中……

详尽的Mysql安装过程 讲解

安装步骤:

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

1、 下载MySQLsourcecode

进入mysql download页面http://dev.mysql.com/downloads/

  点击进入http://dev.mysql.com/downloads/mysql/ 到如下页面:

    

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

    
  点击 Generic Linux (Architecture Independent), Compressed TAR Archive,进入
    
选择 » No thanks, just take me to the downloads!

进行下载

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

进入mysqlbin目录,运行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的远程登录,使用如下命令进入mysqlmysql –u root –p 输入密码(默认为空)第一次进入到数据库系统。

选择数据库:mysql> use mysql;

如下图所示执行sql命令:

说明: C:\Users\roger\AppData\Roaming\Tencent\Users\455769859\QQ\WinTemp\RichOle\EOQH1V)J62%D[KFZM8N)MB5.jpg

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

说明: C:\Users\roger\AppData\Roaming\Tencent\Users\455769859\QQ\WinTemp\RichOle\4AY[GQ~VX4TDD$S4@)[E[ZS.jpg

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

mysql> FLUSH PRIVILEGES;

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

2.       授权法。

使用如下命令:

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

实际上,在user表中添加了一行,如上面标注部分。如果你想允许用户myuserip192.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;

如下图:

         说明: C:\Users\roger\AppData\Roaming\Tencent\Users\455769859\QQ\WinTemp\RichOle\]T~OX)`1~3OC8XFW04KP9DI.jpg

请注意,此密码是经过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

 

posted on 2011-10-09 13:30 Roger 阅读(2362) 评论(3)  编辑 收藏 引用

评论

# re: 详尽的Mysql安装过程 讲解  回复  更多评论   

sudo apt-get install mysql-
2011-10-09 13:38 | zuhd

# re: 详尽的Mysql安装过程 讲解  回复  更多评论   

呵呵 尝试一下sourcecode 的安装方式@zuhd
2011-10-09 13:50 | Roger

# re: 详尽的Mysql安装过程 讲解  回复  更多评论   

感谢,很详细呢
2011-10-09 18:59 | Noble lace wigs

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理