费了2天才弄出来这个登陆方法,当时是,明明知道安装成功了,就是登陆不进去MariaDB,这是心得分享给大家。
端口号登陆方法:
一, centOS7环境下
1. 安装Mysql5.6.19,安装成功后,端口号:3306
[root@centOS7]# mysql -uroot -h127.0.0.1 -P3306 -p
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.6.19 |
+-----------+
1 row in set (0.00 sec)
2.安装MariaDB10.0.12.,安装成功后,口端口号:3307
[root@centOS7]# mysql -uroot -h127.0.0.1 -P3307 -p
mysql> select version();
+---------------------+
| version() |
+---------------------+
| 10.0.12-MariaDB-log |
+---------------------+
1 row in set (0.00 sec)
下面是,在Mysql安装好后,安装MariaDB10.0.12的详细方法
- 下载最新版本的二进制编译包tar.gz (目前为mariadb-10.0.12-linux-x86_64),并将它解压到你的自定义目录中. 本文档假定安装目录为/opt.
- 创建数据所在目录及符号链接,如下所示:
- [root@centOS7 opt]# mkdir mariadb-data
- [root@centOS7 opt]# ln -s mariadb-10.0.12-linux-x86_64 mariadb
- [root@centOS7 opt]# ls -al
- total 20
- drwxr-xr-x. 5 root root 4096 2014-09-26 07:27 .
- dr-xr-xr-x. 23 root root 4096 2014-09-26 06:38 ..
- lrwxrwxrwx. 1 root root 27 2014-09-26 07:27 mariadb -> mariadb-10.0.12-linux-x86_64
- drwxr-xr-x. 13 root root 4096 2014-09-26 07:07 mariadb-10.0.12-linux-x86_64
- drwxr-xr-x. 2 root root 4096 2014-09-26 07:26 mariadb-data
- 创建组mariadb及用户mariadb, 设置文件对应的所属权限:
- [root@centOS7 opt]# groupadd --system mariadb
- [root@centOS7 opt]# useradd -c "MariaDB Server" -d /opt/mariadb -g mariadb --system mariadb
- [root@centOS7 opt]# chown -R mariadb:mariadb mariadb-10.0.12-linux-x86_64/
- [root@centOS7 opt]# chown -R mariadb:mariadb mariadb-data/
- 通过从support-files中拷贝my.cnf, 在/opt/mariadb目录下创建新的my.cnf:
- [root@centOS7 opt]# cp mariadb/support-files/my-medium.cnf mariadb-data/my.cnf
- [root@centOS7 opt]# chown mariadb:mariadb mariadb-data/my.cnf
- 编辑文件/opt/mariadb-data/my.cnf, 增加自定义值, socket, port, user及最重要的设置: data目录和base目录. 最后的设置至少是这样的:
- [client]
- port = 3307
- socket = /opt/mariadb-data/mariadb.sock
- [mysqld]
- datadir = /opt/mariadb-data
- basedir = /opt/mariadb
- port = 3307
- socket = /opt/mariadb-data/mariadb.sock
- user = mariadb
- 从support-files文件中拷贝init.d脚本到对应的位置:
- [root@centOS7 opt]# cp mariadb/support-files/mysql.server /etc/init.d/mariadb
- [root@centOS7 opt]# chmod +x /etc/init.d/mariadb
- 编辑/etc/init.d/mariadb,使用
mariadb替换mysql设置项, 如下所示:
- - # Provides: mysql
- + # Provides: mariadb
- - basedir=
- + basedir=/opt/mariadb
- - datadir=
- + datadir=/opt/mariadb-data
- - lock_file_path="$lockdir/mysql"
- + lock_file_path="$lockdir/mariadb"
你需要告诉mariadb读取唯一的cnf文件. 在$bindir/mysqld_safe之后加上--defaults-file=/opt/mariadb-data/my.cnf. 最后参数设置应该是这样的:
- # Give extra arguments to mysqld with the my.cnf file. This script
- # may be overwritten at next upgrade.
- $bindir/mysqld_safe --defaults-file=/opt/mariadb-data/my.cnf --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
- 显式指定
my.cnf作为传入参数,来运行mysql_install_db:
- [root@centOS7 opt]# cd mariadb
- [root@centOS7 mariadb]# scripts/mysql_install_db --defaults-file=/opt/mariadb-data/my.cnf
- 现在你可以这样启动MariaDB:
- [root@centOS7 opt]# /etc/init.d/mariadb start
- Starting MySQL SUCCESS
- 把MariaDB启动设置为系统级别启动:
- [root@centOS7 opt]# cd /etc/init.d
- [root@centOS7 init.d]# chkconfig --add mariadb
- [root@centOS7 init.d]# chkconfig --levels 3 mariadb on
- 最后,测试现在有两个数据库服务实例在运行:
- [root@centOS7 ~]# mysql -e "SELECT VERSION();"
- +-----------+
- | VERSION() |
- +-----------+
- | 5.6.19 |
- +-----------+
- [root@mariadb-near-mysql ~]# mysql -e "SELECT VERSION();" --socket=/opt/mariadb-data/mariadb.sock
- +--------------------+
- | VERSION() |
- +--------------------+
- |10.0.12-MariaDB-log |
- +--------------------+