Maridb 10.1.10 on centos 6.6 ****************************************************************************** 1.系统部分 ****************************************************************************** --------1.desktop安装就可以,选择自己定义 选择以下两个包,其他依据自己需求选择 base system legacy unix compatibility(rsh telnet ksh tftp ) Desktops legacy x window system compatibility (xorg-x11-xdm) -------2 配置yum源 cd /etc/yum.repos.d mv CentOS-Base.repo CentOS-Base.repo.old wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo yum makecache 检查可更新的rpm包 #yum check-update 更新全部的rpm包 #yum update ---4.关闭防火墙 chkconfig --level 123456 iptables off service iptables stop ---5.改动hosts echo "192.168.50.208 mariadb.jinri.com mariadb" >> /etc/hosts ---6.rz yum install lrzsz -y ****************************************************************************** 2.mysql安装部分 ****************************************************************************** 一:卸载旧版本号 使用以下的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过以下的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e --nodeps mysql // 强力删除模式,假设使用上面命令删除时。提示有依赖的其他文件, 则用该命令能够对其进行强力删除 yum remove mysql-libs 二:安装MySQL --1.安装编译代码须要的包 yum -y install cmake gcc gcc-c++ autoconf automake zlib* libxml* ncurses ncurses-devel libtool-ltdl-devel* make bison bison-devel libaio --2.为mysql新建组和用户 groupadd mysql && useradd -g mysql mysql -s /sbin/nologin && passwd mysql mysql01!@# --3.设置用户的系统资源限制 #vi /etc/security/limits.conf mysql soft nproc 2047 mysql hard nproc 16384 mysql soft nofile 1024 mysql hard nofile 65536 --4.编译安装 mkdir /soft && cd /soft && rz tar xf mariadb-10.1.10.tar.gz && cd mariadb-10.1.10 编译安装 /*** cmake . -LH --查看cmake支持的mysql相关參数 shell> cmake . -L # overview shell> cmake . -LH # overview with help text shell> cmake . -LAH # all params with help text shell> ccmake . # interactive display 又一次编译时,须要清除旧的对象文件和缓存信息 make clean rm -f CMakeCache.txt ****/ cmake -DCMAKE_INSTALL_PREFIX=/data/mysql -DMYSQL_DATADIR=/data/mysql/data -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_SPHINX_STORAGE_ENGINE=1 -DWITH_XTRADB_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DMYSQL_TCP_PORT=33107 make -j8 make install 三:配置MySQL --1.新建数据文件、暂时文件,改动权限 mkdir -p /data/mysql mkdir /data/mysql/{innodb_data,data,tmp} -p mkdir /data/mysql/mysql_logs/{binary_log,innodb_log,query_log,slow_query_log,error_log} -p --2.改动參数 #rm -rf /etc/my.cnf;vi /data/mysql/my.cnf --3.链接文件 ##链接文件 #ln -fs /data/mysql/my.cnf /etc/my.cnf; ll /etc/my.cnf lrwxrwxrwx. 1 root root 23 Nov 18 17:30 /etc/my.cnf -> /data/mysql/my.cnf --4.改动权限 chown -R mysql /data/mysql chgrp -R mysql /data/mysql --5.初始化数据库 ---5.1 初始化数据库 cd /data/mysql/scripts # ./mysql_install_db --defaults-file=/etc/my.cnf --user=mysql --basedir=/data/mysql --datadir=/data/mysql/data [Note] /data/mysql/bin/mysqld (mysqld 10.1.10-MariaDB-log) starting as process 25928 ... OK Filling help tables... [Note] /data/mysql/bin/mysqld (mysqld 10.1.10-MariaDB-log) starting as process 25973 ... OK Creating OpenGIS required SP-s... [Note] /data/mysql/bin/mysqld (mysqld 10.1.10-MariaDB-log) starting as process 26019 ... OK --6.启动MySQL ---6.0 改动文件权限 chown -R mysql /data/mysql; chgrp -R mysql /data/mysql --6.1加入服务。拷贝服务脚本到init.d文件夹,并设置开机启动 cd /data/mysql/&& cp support-files/mysql.server /etc/init.d/mysql && chkconfig mysql on service mysql start #建议使用安全启动,此行不运行 --6.2建议安全启动 /data/mysql/bin/mysqld_safe & #推荐 /data/mysql/bin/mysqld_safe --datadir='/data/mysql/data' & --7.配置mysql用户 MySQL启动成功后。root默认没有密码。我们须要设置root密码。 --7.1改动/etc/profile文件,在文件末尾加入 #vi + /etc/profile PATH=/data/mysql/bin:$PATH export PATH #source /etc/profile 如今。我们能够在终端内直接输入mysql进入,mysql的环境了 运行以下的命令改动root密码 --7.2改动mysql管理员密码 1.给全部的root用户设定密码: 第一种方式(推荐此方法) # mysql -uroot -p MariaDB [(none)]> MariaDB [(none)]> select host,user,password from mysql.user; +-------------------+------+----------+ | host | user | password | +-------------------+------+----------+ | localhost | root | | | mariadb.jinri.com | root | | | 127.0.0.1 | root | | | ::1 | root | | | localhost | | | | mariadb.jinri.com | | | +-------------------+------+----------+ 6 rows in set (0.00 sec) update mysql.user set password = password('password') where user = 'root' limit 100;flush privileges; 3.删除全部匿名用户(不要删除root@localhost) mysql> DROP USER ''@'localhost';delete from mysql.user where user='' limit 10;commit;flush privileges; mysql> delete from mysql.user where host='mariadb.jinri.com';flush privileges; --7.3 设置mysql用户安全 select user,host,password from mysql.user; delete from mysql.user where user not in('root');flush privileges; --7.4 设置root用户能够远程訪问 --方法1:授权法(推荐) mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;flush privileges; select host,user,password from mysql.user; --7.3 登录mysql #mysql -hlocalhost -uroot -ppassword ----7.6设置linux脚本 vi + ~/.bash_profile #ocpyang set(绑定mysql到内网IP仅仅能写内网IP) alias date='date "+%Y-%m-%d %H:%M:%S" ' alias mysql="mysql -hlocalhost -uroot -ppassword --auto-rehash --prompt="u@mariadb R:m:s>" " alias errorlog="cat /data/mysql/mysql_logs/error_log/error.log" alias mycnf="cd /data/mysql" export PATH=/data/mysql/scripts:$PATH source ~/.bash_profile ----7.7改动权限 chown -R mysql /data/mysql && chgrp -R mysql /data/mysql ----常见启动错误或警告 cat /data/mysql/mysql_logs/error_log/error.log 150619 14:16:30 [Warning] 'user' entry 'root@mariadb.jinri.com' ignored in --skip-name-resolve mode. 150619 14:16:30 [Warning] 'user' entry '@mariadb.jinri.com' ignored in --skip-name-resolve mode. 150619 14:16:30 [Warning] 'proxies_priv' entry '@% root@mariadb.jinri.com' ignored in --skip-name-resolve mode. 解决的方法: delete from mysql.proxies_priv where host='mariadb.jinri.com';commit;flush privileges;