CentOS-6.3安装配置MYSQL5.5.37

浏览: 4844
安装说明
安装环境:CentOS-6.3
安装方式:源码编译安装
软件:mysql-5.5.37.tar.gz和cmake-2.8.10.2.tar.gz
下载地址:http://mysql.mirror.kangaroot.net/Downloads/
http://www.cmake.org/files/v2. ... ar.gz
安装位置:/usr/local/mysql

安装前提
上传mysql-5.5.37.tar.gz和cmake-2.8.10.2.tar.gz到/usr/local文件夹下。

执行以下操作:

CentOS安装g++和ncurses-devel
[root@localhost local]# yum install gcc-c++
[root@localhost local]# yum install ncurses-devel

cmake的安装
[root@localhost]# tar -zxv -f cmake-2.8.10.2.tar.gz // 解压压缩包
[root@localhost local]# cd cmake-2.8.10.2
[root@localhost cmake-2.8.10.2]# ./configure
[root@localhost cmake-2.8.10.2]# make
[root@localhost cmake-2.8.10.2]# make install

将cmake永久加入系统环境变量
用vi在文件/etc/profile文件中增加变量,使其永久有效,
[root@localhost local]# vi /etc/profile
在文件末尾追加以下两行代码:
PATH=/usr/local/cmake-2.8.10.2/bin:$PATH
export PATH
执行以下代码使刚才的修改生效:
[root@localhost local]# source /etc/profile
用 export 命令查看PATH值
[root@localhost local]# echo $PATH



创建mysql的安装目录及数据库存放目录、MYSQL用户及用户组
[root@localhost]#	mkdir -p /usr/local/mysql	 //安装mysql
[root@localhost]# mkdir -p /usr/local/mysql/data //存放数据库
[root@localhost] groupadd mysql
[root@localhost] useradd -r -g mysql mysql



编译安装mysql
[root@localhost local]#	tar -zxv -f mysql-5.5.37.tar.gz	 //解压
[root@localhost local]# cd mysql-5.5.37
[root@localhost mysql-5.5.37]#
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306
[root@localhost mysql-5.5.37]# make
[root@localhost mysql-5.5.37]# make install



检验是否安装成功
[root@localhost mysql-5.5.29]#	cd /usr/local/mysql/
[root@localhost mysql]# ls
bin COPYING data docs include INSTALL-BINARY lib man mysql-test README scripts share sql-bench support-files
有bin等以上文件的话,恭喜你已经成功安装了mysql。



配置mysql的详细步骤如下
设置mysql目录权限
[root@localhost mysql]# cd /usr/local/mysql //把当前目录中所有文件的所有者设为root,所属组为mysql
[root@localhost mysql]# chown -R root:mysql .
[root@localhost mysql]# chown -R mysql:mysql data

将mysql的启动服务添加到系统服务中
[root@localhost mysql]# cp support-files/my-medium.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? y

创建系统数据库的表
[root@localhost mysql]# cd /usr/local/mysql
[root@localhost mysql]# scripts/mysql_install_db --user=mysql

设置环境变量
[root@localhost ~]# vi /root/.bash_profile
在修改PATH=$PATH:$HOME/bin为:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
[root@localhost ~]# source /root/.bash_profile //使刚才的修改生效


手动启动mysql
[root@localhost ~]# cd /usr/local/mysql
[root@localhost mysql]# ./bin/mysqld_safe --user=mysql & //启动MySQL,但不能停止
mysqladmin -u root -p shutdown //此时root还没密码,所以为空值,提示输入密码时,直接回车即可。


将mysql的启动服务添加到系统服务中
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql

启动mysql
[root@localhost mysql]# service mysql start
Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).
启动失败:
我这里是权限问题,先改变权限
[root@localhost mysql]# chown -R mysql:mysql /usr/local/mysql
接着启动服务器
[root@localhost mysql]# /etc/init.d/mysql start



修改MySQL的root用户的密码以及打开远程连接
[root@localhost mysql]# mysql -u root mysql
mysql> use mysql;
mysql> desc user;
mysql> GRANT ALL PRIVILEGES ON [i].[/i] TO root@"%" IDENTIFIED BY "root"; //为root添加远程连接的能力
mysql> update user set Password = password('123456') where User='root'; //设置root用户密码
mysql> select Host,User,Password from user where User='root';
mysql> flush privileges;
mysql> exit

重新登录
[root@localhost mysql]# mysql -u root -p
Enter password:123456
若还不能进行远程连接,关闭防火墙
[root@localhost]# /etc/rc.d/init.d/iptables stop

推荐 0
本文由 梁勇 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

3 个评论

不错但是,不能登陆mysql,说是mysql命令不存在,安装mysql客户端后,登陆出现Can't connect to local MySQL server through socket
连接Mysql提示Can’t connect to local MySQL server through socket的解决方法 http://www.aiezu.com/db/mysql_cant_connect_through_socket.html 参考这个修复下
通过远程访问报错:mysql> GRANT ALL PRIVILEGES ON [i].[/i] TO root@"%" IDENTIFIED BY "root";
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[i].[/i] TO root@"%" IDENTIFIED BY "root"' at line 1

解决方案:mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 你想root使用123456从任何主机连接到mysql服务器。

要回复文章请先登录注册