首先先把mariadb的二进制安装包上传到服务器上面 首先创建mysql的用户做为mariadb的运行用户,这个用户作为系统用户或者不可以登录的用户命令如下 # useradd -r mysql -s /sbin/nologin 然后再把mariadb的二进制包解压到服务器上的/usrl/local/下命令入下 # tar -zxvf mariadb-10.2.12-linux-x86_64.tar.gz -C /usr/local/ 这条命令就直接把mariadb的二进制包直接解压到/usr/local/下了 然后再给mariadb做一下软连接命令如下 # ln -s /usr/local/mariadb-10.2.12-linux-x86_64/ /usr/local/mysql 这样软连接就做好了,这是把mariadb软连接成mysql也可以叫做重命名 再给mysql的目录一个只有mysql的权限 # chown -R mysql.mysql /usr/local/mysql 这是给/usr/local/mysql拥有mysql用户和mysql组的权限 再来创建一个mariadb的数据名录。不要再mysql的目录里面创建,cd一下然后再来创建此目录 # mkdir -pv /data/mysqldb 再给这个目录只有mysql的用户权限 # chown -R mysql.mysql /data 这是让/data/mysqldb拥有mysql用户和mysql组的权限 给mariadb做一个PATH变量方便快速启动 # echo 'PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile.d/mysql.sh 再来让这条变量生效一下。命令如下,下次可以直接用mysql做为直接访问的命令如: mysql -uroot -p回车然后再数据密码就可以,默认第一次数据库未做安全脚本,数据库是没有密码的 # . /etc/profile.d/mysql.sh 注意点后面是有空格的,这是让这挑命令生效 拷贝mariadb的数据库相应的配置文件: # \cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf 输入这条命令以后会有一个提示的问你是否要替换my.cnf的文件?你输入y即可 输入y表示确认替换 然后再来编译一下/etc/my.cnf配置文件 # vim /etc/my.cnf vim编辑器用法 输入i进入编辑模式 先按ESC建再按u 输入u恢复模式,比如不知道删除了什么东西,或者改错了,可以按u来恢复修改之前改错的字符 如要保存,先按esc然后再按shift+:(冒号)要一起按 接着输入wq回车即可 w:保存 q:推出 wq:保存并退出 在[mysqld]里面加上 加上此条命令。这是数据库的存放路径 datadir=/data/mysqldb 改好以后如下: [mysqld] port = 3306 datadir=/data/mysqldb 这个是加入的内容 socket = /tmp/mysql.sock skip-external-locking key_buffer_size = 384M max_allowed_packet = 1M table_open_cache = 512 sort_buffer_size = 2M read_buffer_size = 2M read_rnd_buffer_size = 8M myisam_sort_buffer_size = 64M thread_cache_size = 8 query_cache_size = 32M 改好以后可以保存并推出 先按esc然后再按shift+:(冒号)要一起按 接着输入wq回车即可 这样就保存好了 默认最小化安装系统初始化的时候会报错,需要安装一个包具体命令如下: # yum -y install libaio 这样数据库初始化的时候就不会报错了!!! 以上做完以后就可以做数据库初始化了,命令如下 初始化的时候进入mysql的目录再进行初始化 # cd /usr/local/mysql # ./scripts/mysql_install_db --datadir=/data/mysqldb --user=mysql --datadir=这是据数据存放的位置目录 --user=这是数据库运行的用户 接着把mysql启动脚本复制到/etc/init.d/目录下 # cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 这是把/usr/local/mysql/support-files/mysql.server启动脚本文件复制到/etc/init.d/下,这样就可以把mysqld做为开机自启动了 接下来把mysqld服务加入到系统服务里面去 # chkconfig --add mysqld 这个命令把mysqld加入到服务器的服务里面但是这样只是把服务加进去了,但是没有设置为开机自启动 mysqld开机自启动服命令如下 # chkconfig mysqld on 这样mysqld服务就可以开机自启动了 接下里手动启动mysqld的服务 # service mysqld start 启动命令 重启命令: # service mysqld restart 接下来就可以给你的数据库,跑一下安全脚本了。命令如下 # /usr/local/mysql/bin/mysql_secure_installation 回车 nter current password for root (enter for none): 默认数据没有密码直接回车即可,提示输入密码,没有密码就直接回车 OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MySQL root user without the proper authorisation. Set root password? [Y/n] 是否设置mysql的root密码输入y设置密码 然后输入密码回车,会让你再输入一遍密码再回车 New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? [Y/n] 问你是否删除匿名用户 输入 y ... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? [Y/n] 是否禁止root用户远程登录 可以选择n n就是可以远程登陆 y就是不可以远程登陆 这里的root是mysql的root用户,并不是系统的root By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? [Y/n] 问你是否删除text测试数据库选择y回车 - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? [Y/n] 问你是否重新加载mysql数据的权限表输入y 这样你的数据的安全脚本就跑完了。 可以用命令访问你的数据了 # mysql -uroot -p回车 输入你的密码即可进入数据库了