1、首先去mysql官网下载mysql安装包,例如:mysql-5.6.40-linux-glibc2.12-i686.tar.gz。
2、下载完之后,将文件上传到linux中的/usr/local文件夹下,并解压。
3、将解压后的文件夹名称改成mysql。
4、创建用户和用户组
groupadd mysql
useradd -r -g mysql mysql
5、进入刚刚解压并重命名的mysql路径,例如:/usr/local/mysql。
执行:
cp support-files/my-medium.cnf /etc/my.cnf
或:
cp support-files/my-default.cnf /etc/my.cnf
6、vi /etc/my.cnf
添加以下内容
1 # For advice on how to change settings please see
2 # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
3 # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
4 # *** default location during install, and will be replaced if you
5 # *** upgrade to a newer version of MySQL.
6
7 [mysqld]
8
9 # Remove leading # and set to the amount of RAM for the most important data
10 # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
11 # innodb_buffer_pool_size = 128M
12
13 # Remove leading # to turn on a very important data integrity option: logging
14 # changes to the binary log between backups.
15 # log_bin
16
17 # These are commonly set, remove the # and set as required.
18 basedir = /usr/local/mysql
19 datadir = /usr/local/mysql/data
20 port = 3306
21 # server_id = .....
22 socket = /tmp/mysql.sock
23 character-set-server = utf8
24 skip-name-resolve
25 log-err = /usr/local/mysql/data/error.log
26 pid-file = /usr/local/mysql/data/mysql.pid
27
28 # Remove leading # to set options mainly useful for reporting servers.
29 # The server defaults are faster for transactions and fast SELECTs.
30 # Adjust sizes as needed, experiment to find the optimal values.
31 # join_buffer_size = 128M
32 # sort_buffer_size = 2M
33 # read_rnd_buffer_size = 2M
34
35 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
7、还是在/usr/local/mysql这个目录下设定目录的访问权限
chown -R mysql .
chgrp -R mysql .
scripts/mysql_install_db --user=mysql
chown -R root .
chown -R mysql data
注意以上的点不是错误打上去的,而是表示当前路径
8、在mysql目录下或者在mysql/bin下执行
./mysql_install_db --verbose --user=root --defaults-file=/etc/my.cnf --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql --pid-file=/usr/local/mysql/data/mysql.pid --tmpdir=/tmp
9、进入/usr/local/mysql/bin,启动mysql,执行下面命令
./mysqld_safe --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock --user=root &
如果停住了,并且一闪一闪就成功了。
10、启动另一个shell终端,进入/usr/local/mysql,执行下面的命令,设置开启启动
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql
chmod 700 /etc/init.d/mysql
chkconfig --add mysqld
chkconfig --level 2345 mysqld on
chown mysql:mysql -R /usr/local/mysql/
11、重启服务器
12、使用service mysqld status查看msyql的启动状态。
13、将mysql命令添加为全局可以识别,意思就是在linux任意一个目录都可以识别mysql命令
,执行以下命令
ln -s /usr/local/mysql/bin/mysql /usr/bin (mysql的安装路径)
14、登录mysql,执行下面命令
mysql -uroot -p
密码为空直接回车,运行以下两条命令
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘duan’ with grant option;
Flush privileges;
15、重启服务器,大功告成。
如果忘记了mysql的密码的话可以修改/etc/my.cnf文件,有一些这个文件不再这个目录里,可以使用搜索命令。
在/etc/my.cnf文件末尾加上
skip-grant-tables
保存,重启mysql,mysql -u root就可以直接进入mysql了。
mysql> use mysql;
mysql> update user set password=password(“你的新密码”) where user=“root”;
mysql> flush privileges;
mysql> quit
将之前配置的跳过密码的配置删除,然后重启mysql。大功告成。