今天为大家介绍下mysql 5.5.37的编译安装方式,在工作中编译安装也是我们常用的一种方式。希望通过这篇文章的介绍,能够给大家提
今天为大家介绍下mysql 5.5.37的编译安装方式,在工作中编译安装也是我们常用的一种方式。希望通过这篇文章的介绍,,能够给大家提供一个安装思路!
一、创建mysql的安装目录和用户
mkdir -p /usr/local/mysql  #安装mysql 
mkdir -p /usr/local/mysql/data   #存放数据库 
groupadd mysql 
useradd -r -g mysql mysql
二、yum安装依赖库
yum install gcc-c++ ncurses-devel –y
#安装错误信息: 
cmake error atcmake/readlinenanake:83 (message): 
curses library notfound.  please install appropriatepackage, 
#解决方法 
yum install ncurses-devel 
rm cmakecache.txt
三、编译安装cmake
tar -zxv -f cmake-2.8.10.2.tar.gz 
cd cmake-2.8.10.2 
./configure
make && make install
四、编译安装mysql5.5.37
tar -zxv -f mysql-5.5.37.tar.gz  #解压 
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
#执行make命令 
make
make install
五、检查是否安装成功
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。
六、配置mysql5.5.37详细步骤
#把当前目录中所有文件的所有者设为root,所属组为mysql 
chown -r root:mysql . 
chown -r mysql:mysql data (可选)
#将mysql的启动服务添加到系统服务中 
[root@localhost mysql]# cp support-files/my-medium.cnf /etc/my.cnf 
cp:是否覆盖/etc/my.cnf? y
#mysql启动出错解决方法 
1、问题 
[root@localhost mysql]# /etc/rc.d/init.d/mysql statusmysql is not running, but lock file (/var/lock/subsys/mysql[failed][root@localhost mysql]# /etc/rc.d/init.d/mysql startstarting mysql...the server quit without updating pid file(/usr/local/mysql/data/localhost.localdomain.pid).                              [failed] 
2、原因 
没有初始化权限表 
3、解决办法 
cd /usr/local/mysql(进入mysql安装目录)chown -r mysql.mysql . 
#重新初始化数据库 
[root@b2c-test-server mysql]# ./scripts/mysql_install_db--user=mysql 
[root@b2c-test-server mysql]# /etc/init.d/mysql start 
starting mysql.. success!
#直接输入mysql启动数据库出错: 
[root@localhost mysql]# mysql 
-bash: mysql: command not found 
#解决方法 
[root@localhost mysql]# ln -s /usr/local/mysql/bin/mysql/usr/bin/
#修改mysql的root用户的密码以及打开远程连接 
[root@b2c-test-server mysql]# mysql -u root mysql 
mysql> use mysql; 
mysql> desc user; 
mysql> grant all privileges on *.* 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@b2c-test-server mysql]# mysql -u root -p 
enter password:123456 
#若还不能进行远程连接,关闭防火墙 
[root@b2c-test-server mysql]# /etc/rc.d/init.d/iptables stop
七、设置mysql密码
#方法一:在mysql系统外,使用mysqladmin 
[root@b2c-test-server mysql]# mysqladmin -u rootflush-privileges password 'root'
#方法一:通过登录mysql系统 
[root@b2c-test-server mysql]# mysql -u root -p 
enter password: 
mysql> use mysql; 
database changed 
mysql> update user set password=password(root)where user='root'; 
query ok, 4 rows affected (0.00 sec) 
rows matched: 4 changed: 4  warnings: 0 
mysql> flush privileges; 
mysql> exit;
八、mysql root密码忘记解决方法
#方法一: 
# /etc/init.d/mysqld stop 
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking& 
# mysql -uroot mysql 
mysql> update user setpassword=password('newpassword') where user='root'; 
mysql> flush privileges; 
mysql> quit 
# /etc/init.d/mysql restart 
# mysql -uroot -penter password:
#方法二: 
#修改mysql的登录设置: 
#在[mysqld]的段中加上一句:skip-grant-tables
如下: 
[root@b2c-test-server mysql]# vi /etc/my.cnf  
[mysqld]             
datadir=/var/lib/mysql    
socket=/var/lib/mysql/mysql.sock     
user=mysql            
skip-grant-tables
#重启mysql 
/etc/init.d/mysqld restartstoppingmysqld:             
[  ok  ]startingmysqld:                                          [  ok  ] 
#无密码登录: 
# mysql 
mysql> use mysql;update user setpassword=password('root') where user='root';  mysql> flush privileges; 
#退出,修改/etc/my.conf,删除skip-grant-tables,重启mysql。搞定
ok! mysql的编译安装今天就先介绍到这里吧!
--------------------------------------分割线 --------------------------------------
ubuntu 14.04下安装mysql 
《mysql权威指南(原书第2版)》清晰中文扫描版 pdf 
ubuntu 14.04 lts 安装 lnmp nginx\php5 (php-fpm)\mysql 
ubuntu 14.04下搭建mysql主从服务器 
ubuntu 12.04 lts 构建高可用分布式 mysql 集群 
ubuntu 12.04下源代码安装mysql5.6以及python-mysqldb 
mysql-5.5.38通用二进制安装 
--------------------------------------分割线 --------------------------------------
本文永久更新链接地址:
   
 
   