安装mysql可以说是lamp环境搭建中最复杂的一步,下面我们来看下具体的安装步骤吧
1、安装 ncurses
Ncurses 提供字符终端处理库,包括面板和菜单。它提供了一套控制光标,建立
窗口,改变前景背景颜色以及处理鼠标操作的函数。使用户在字符终端下编写应
用程序时绕过了那些恼人的底层机制。简而言之,他是一个可以使应用程序直接
控制终端屏幕显示的函数库。
[root@centos6 ~]#yum -y install ncurses-devel
* 注:如果报错,包找不到,是 通配符没有识别,
给文件名加双引号 "ncurses" yum -y install "ncurses"
2、安装所需工具和库
[root@centos6 ~]#yum -y install gcc-c++ cmake bison make perl
创建MySQL伪用户
安装 MySQL
[root@centos6 ~]#groupadd mysql
[root@centos6 ~]#useradd -g mysql mysql
*添加用户组 mysql,将 mysql 用户默认组设置为 mysql 用户组
[root@centos6 ~]#cd /usr/local/src/mysql-5.6.33
[root@centos6 mysql-5.6.33]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DEXTRA_CHARSETS=all
-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_USER=mysql -DMYSQL_TCP_PORT=3306
在这一步为了防止不报错,最好是手动一个一个敲,敲完一行后空格加反斜杠换行,最好一个不用直接回车确定
另附参数说明::
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 安装位置
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock 指定 socket (套接字)文件位置
-DEXTRA_CHARSETS=all 扩展字符支持
-DDEFAULT_CHARSET=utf8 默认字符集
-DDEFAULT_COLLATION=utf8_general_ci 默认字符校对
-DWITH_MYISAM_STORAGE_ENGINE=1 安装 myisam 存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 安装 innodb 存储引擎
-DWITH_MEMORY_STORAGE_ENGINE=1 安装 memory存储引擎
-DWITH_READLINE=1 支持 readline 库
-DENABLED_LOCAL_INFILE=1 启用加载本地数据
-DMYSQL_USER=mysql 指定 mysql 运行用户
-DMYSQL_DATADIR 设置MySQL数据存放目录
-DMYSQL_TCP_PORT=3306 指定 mysql 端口
[root@centos6 mysql-5.6.33]# make
[root@centos6 mysql-5.6.33]# make install
注意:如果安装出错,需要重新配置的话,要删除/usr/local/src/mysql-5.6.33目录下的 CMakeCache.txt文件
rm -rf CMakeCache.txt
3、修改mysql目录所有者和组
cd /usr/local/mysql/
[root@centos6 mysql]#chown -R mysql .
[root@centos6 mysql]#chgrp -R mysql .
4、初始化数据库
[root@centos6 mysql]#/usr/local/mysql/scripts/mysql_install_db --user=mysql
5、修改 mysql 目录权限 创建数据库授权表
cd /usr/local/mysql
[root@centos6 mysql]#chown -R root .
[root@centos6 mysql]#chown -R mysql data
6、复制 mysql 配置文件
[root@centos6 mysql]#cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
注:弹出选择窗,如果有,请覆盖输入 y
7、再一次初始化数据库
[root@centos6 mysql]#/usr/local/mysql/scripts/mysql_install_db --user=mysql
8、启动 MySQL服务
用原本源代码的方式去使用和启动 mysql
[root@centos6 mysql]#/usr/local/mysql/bin/mysqld_safe --user=mysql &
出现下面的字样,表示启动成功了!
9、检查mysql是否启动
netstat -tulnp | grep 3306
写入/etc/rc.local 保证开机自启动MySQL
vim /etc/rc.local
/usr/local/mysql/bin/mysqld_safe --user=mysql &
:wq 保存并退出
10、登录一下试试,此时的密码为空直接回车即可 然后去重新设置MySQL的登录密码为123456
[root@centos6 mysql]#/usr/local/mysql/bin/mysql -u root -p
mysql>show databases;
mysql>\s
查看字符集是否改为 utf8 如果显示并非所有的为utf8则需要修改 具体如果修改请往下看,如何已经为utf8则不必进行下列的修改字符集步骤
*进入 mysql 以后用 set 来改密码
mysql>SET PASSWORD=PASSWORD('root123');
mysql>exit
11、Linux下MySQL的修改字符集编码为UTF8(解决中文乱码问题)
修改mysql的my.cnf文件中的字符集键值(注意配置的字段细节):
1、在[client]字段里加入default-character-set=utf8,如下:
[client]
default-character-set=utf8
2、在[mysqld]字段里加入character-set-server=utf8,如下:
[mysqld]
character-set-server=utf8
3、在[mysql]字段里加入default-character-set=utf8,如下:
[mysql]
default-character-set=utf8
修改完成后,重启MySQL
[root@centos6 mysql]#/usr/local/mysql/bin/mysqladmin -uroot -p123456 shutdown
[root@centos6 mysql]#/usr/local/mysql/bin/mysqld_safe --user=mysql &
12、配置MySQL远程连接
打开iptables 3306端口
输入账号和密码进入MySQL管理
[root@centos6 mysql]#/usr/local/mysql/bin/mysql -u root -p
mysql>create database blog;
mysql>show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| blog |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.01 sec)
mysql> grant all privileges on blog.* to leixiaotian@'%' identified by '123456';
Query OK, 0 rows affected (0.02 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit;