普及:
关系型数据库:
Oracle、MySQL、PostgreSQL
非关系型数据库(NOSQL):
HBase、Redis
图形数据库:
Titan
时序数据库:
influxdb
一、MySQL(mysql)
二进制,默认放到/usr/local下
安装MySQL步骤:
1.从本地选择mysql的安装包上传到Linux上
rz
2.查看是否安
# ps -ef | grep mysql
3.查看是否由RPM安装包
# rpm -qa | grep mysql
4.移动安装包到/usr/local下
# cp xxx /usr/local/
5.解压
# tar -zxvf mysql安装包
6.重命名文件夹
# mv 解压之后的mysql文件名 mysql
7.创建一个dba组
# groupadd -g 101 dba
101:该组的id
8.创建一个用户
# useradd -u 514 -g dba -G root -d /usr/local/mysql mysqladmin
514:指定该用户名字
-g xxx:表示组名是xxx
-G xxx:拥有root
-d:指定用户路径
生产环境:给你的用户肯定不是root,给xxxx/xxx(sudo/不带sudo)
==sudo==:创建一个mysql服务的管理的用户
不 sudo:IT给你的用户开启sudo权限
为什么要创建mysqladmin/dba?
1.一个用户只对一个组件
2.dba组
9.可以创建密码
# passwd mysqladmin
10.如果没有.bash_profile文件,就拷贝
# cp /etc/skel/.* /usr/local/mysql
11.重新覆盖/etc/my.cnf
# vi /etc/my.cnf
先按dG删除全部,然后粘贴以下内容
[client]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
[mysqld]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
skip-external-locking
key_buffer_size = 256M
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 4M
query_cache_size= 32M
max_allowed_packet = 16M
myisam_sort_buffer_size=128M
tmp_table_size=32M
table_open_cache = 512
thread_cache_size = 8
wait_timeout = 86400
interactive_timeout = 86400
max_connections = 600
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 32
#isolation level and default engine
default-storage-engine = INNODB
transaction-isolation = READ-COMMITTED
server-id = 1
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
pid-file = /usr/local/mysql/data/hostname.pid
#open performance schema
log-warnings
sysdate-is-now
binlog_format = MIXED
log_bin_trust_function_creators=1
log-error = /usr/local/mysql/data/hostname.err
log-bin=/usr/local/mysql/arch/mysql-bin
#other logs
#general_log =1
#general_log_file = /usr/local/mysql/data/general_log.err
#slow_query_log=1
#slow_query_log_file=/usr/local/mysql/data/slow_log.err
#for replication slave
#log-slave-updates
#sync_binlog = 1
#for innodb options
innodb_data_home_dir = /usr/local/mysql/data/
innodb_data_file_path = ibdata1:500M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/arch
innodb_log_files_in_group = 2
innodb_log_file_size = 200M
****innodb_buffer_pool_size = 2048M ****
innodb_additional_mem_pool_size = 50M
innodb_log_buffer_size = 16M
innodb_lock_wait_timeout = 100
#innodb_thread_concurrency = 0
innodb_flush_log_at_trx_commit = 1
innodb_locks_unsafe_for_binlog=1
#innodb io features: add for mysql5.5.8
performance_schema
innodb_read_io_threads=4
innodb-write-io-threads=4
innodb-io-capacity=200
#purge threads change default(0) to 1 for purge
innodb_purge_threads=1
innodb_use_native_aio=on
#case-sensitive file names and separate tablespace
innodb_file_per_table = 1
lower_case_table_names=1
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
[mysqlhotcopy]
interactive-timeout
[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M
修改innodb_buffer_pool_size = 2048M其为innodb_buffer_pool_size = 1024M
12.赋予权限
赋予my.cnf权限:
# chown mysqladmin:dba /etc/my.cnf
# chmod 640 /etc/my.cnf
赋予mysql权限:
# chown -R mysqladmin:dba /usr/local/mysql
# chmod -R 755 /usr/local/mysql
13.创建文件夹,归档文件
mkdir arch
14.第一次安装
scripts/mysql_install_db --user=mysqladmin --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
15.如果安装的时候发现缺少libaio版本,那么久进行以下操作
查看一下版本:
cat /proc/version
rpm -qa | grep gcc
yum -y install libaio
16.切换到mysql根目录
cd /usr/local/mysql
17.将服务文件拷贝到init.id下,并重命名为mysql
cp support-files/mysql.server /etc/rc.d/init.d/mysql
18.赋予可执行权限
chmod +x /etc/rc.d/init.d/mysql
19.删除服务
chkconfig --del mysql
20.添加服务
chkconfig --add mysql
21.设置开机自启动:
chkconfig --level 345 mysql on
22.删除mysql中的my.cnf
rm -rf my.cnf
bin/mysqld_safe &
如果不可以,先卸载依赖包,再修改权限
rpm --nodeps -e mysql-libs-5.1.71-1.el6.x86_64
chmod -R 775 /var/log
23.启动mysql
netstat -tulnp | grep mysql
24.登录MySQL
# mysql
> show databases;
> use mysql;
> update user set password=password('123456') where user='root';
> select host,user,password from user;
> delete from user where user='';
> select host,user,password from user;
>flush privileges;
重新安装:
rm -rf data
rm -rf arch/*
scripts/mysql_install_db --user=mysqladmin --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
如果没有报错强行退出会报:
swap的错误
改正:
rm -f .my.cnf.swaf
之后重新编译
【来自@若泽大数据】