以Oracle官方 免费社区版本为例
1、下载
下载页面是 http://dev.mysql.com/downloads/mysql/。
因为众所周知的原因,现在这个界面打开对应的选项时没反应,我们可以直接用下面的链接下载
http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz
如果出现新的版本,直接更改这个链接中的版本号即可,如现在应改为
http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.23-linux-glibc2.5-x86_64.tar.gz
2、复制到linux中,并解压
tar xvf mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz -C /usr/local
用该语句可以直接解压至/usr/local下面
3、增加mysql用户
groupadd -r -g 306 mysql
#-r表示是伪用户,只是用来运行mysql程序,不能登录系统
useradd -g 306 -r -u 306 mysql
4、 在path里添加/usr/local/mysql/bin
5、更改/etc/my.cnf,示例设置如下(下面参数,测试机用,正式环境不要照搬)
[client]
socket = /tmp/user_3306.sock
user = mysql
port = 3306
[mysqld]
basedir = /usr/local/mysql
datadir = /data/mysql/user_3306/data
tmpdir = /data/mysql/user_3306/tmp
socket = /tmp/user_3306.sock
pid_file = /data/mysql/user_3306/data/mysql.pid
log_error = error.log
user = mysql
port = 3306
#库唯一值,注意各库最好设置不一样,特别是复制时,如果一样会影响复制
server_id = 023306
log-bin = mysql-bin
#忽略表名大小写,只对启用该参数后建的表有效,所以不要乱改这个参数
lower_case_table_names = 1
character_set_server = gbk
#使用独立表空间
innodb_file_per_table = 1
innodb_autoinc_lock_mode = 2
explicit_defaults_for_timestamp = true
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
6、初始化库
1)建立目录,要确认你所用的目录有足够的空间
建立目录,并把属主改为mysql
rm /data/mysql/user_3306/ -rf
mkdir /data/mysql/user_3306/data -p
mkdir /data/mysql/user_3306/logs -p
mkdir /data/mysql/user_3306/tmp -p
chown -R mysql:mysql /data/mysql/*
2)后面初始化的时间,会有个key之类的提示,不想看那个提示的可以提前处理下
cd /data/mysql/user_3306/data/
openssl genrsa -out private_key.pem 1024
openssl rsa -in private_key.pem -pubout > public_key.pem
chmod 444 public_key.pem
chmod 444 private_key.pem
chown mysql:mysql public_key.pem
chown mysql:mysql private_key.pem
3)初始化命令只能在 mysql 这个目录下执行,不然会报错
echo > /data/mysql/user_3306/data/error.log
cd /usr/local/mysql
# 必须在mysql目录下执行
# scripts/mysql_install_db --user=mysql --defaults-file=/etc/my.cnf
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql/user_3306/data
cat /data/mysql/user_3306/data/error.log
安装完成,可以使用了。
4)可以使用mysql.server来启动mysql
cd /data/mysql/user_3306/
cp /usr/local/mysql/support-files/mysql.server .
chown -R mysql:mysql /data/mysql/*
./mysql.server start
7、更改密码
方法可以见前面的初始化后的提示
/usr/local/mysql/bin/mysqladmin -u root password '3306'
#登录,用户名是root 密码是前面设置的3306
mysql -uroot -p3306
8、删除默认用户
delete from mysql.user where not(user='root' and host='localhost');
flush privileges;
show databases;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
好,环境拱建完了,学习或测试吧