银河麒麟V10环境安装MySQL

最近在信创操作系统:银河麒麟V10下部署了一遍MySQL,走了点弯路,后来在大佬的指点下成功部署,在此予以记录~

准备工作

安装MySQL之前要先检测系统是否带有MySQL和mariadb,如果有建议全部删掉,否则和本包安装的时候有冲突。

  1. 查看系统是否自带MySQL和mariadb
rpm -qa | grep mysql
rpm -qa | grep mariadb
  1. 删除MySQL和mariadb相关包
rpm -e filename
  1. 查询所有的MySQL相关的文件,然后统统删掉
find / -name mysql

正式部署

  1. 将MySQL的tar包放在/root路径下,并解压
mv mysql-XXXX.tar /root
tar -xf mysql-XXXX.tar

  1. 进入MySQL目录编译安装
cd mysql-XXXX

cmake -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=boost

make && make install

  1. 查看是否有MySQL用户及用户组,若没有则添加
cat /etc/group | grep mysql
groupadd mysql
useradd -r -g mysql mysql
  1. 对创建的用户进行MySQL文件的授权,注意此处的MySQL是安装后的路径,而不是一开始解压缩的路径
chown -R mysql:mysql /usr/local/mysql
  1. 需要编辑/etc/myf(如果没有则创建),格式不唯一,仅供参考

[client]
port = 3306
socket = /tmp/mysql.sock

[mysqld]
port = 3306
socket = /tmp/mysql.sock
user = mysql

basedir = /usr/local/mysql
datadir = /usr/local/mysql/data/
pid-file =/usr/local/mysql/data/mysql.pid

log_error = /usr/local/mysql/data/mysql-error.log
slow_query_log = 1
long_query_time = 1
slow_query_log_file =/usr/local/mysql/data/mysql-slow.log

skip-external-locking
key_buffer_size = 32M
max_allowed_packet = 1024M
table_open_cache = 128
sort_buffer_size = 768K
net_buffer_length = 8K
read_buffer_size = 768K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
thread_cache_size = 16
query_cache_size = 16M
tmp_table_size = 32M
performance_schema_max_table_instances = 1000

explicit_defaults_for_timestamp = true
#skip-networking
max_connections = 500
max_connect_errors = 100
open_files_limit = 65535

log_bin=mysql-bin
binlog_format=mixed
server_id = 232
expire_logs_days = 10
early-plugin-load = “”

default_storage_engine = InnoDB
innodb_file_per_table = 1
innodb_buffer_pool_size = 128M
innodb_log_file_size = 32M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[myisamchk]
key_buffer_size = 32M
sort_buffer_size = 768K
read_buffer = 2M
write_buffer = 2M

  1. 给配置文件权限,权限不对,后面会一直报error
chmod 644 /etc/myf
  1. 初始化MySQL在/usr/local/mysql/bin/下执行
./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
  1. 拷贝可执行文件
cp mysql.server /etc/init.d/mysqld

到这里就安装部署完成了,下面来做一个小小的启动连接测试~

测试

  1. 启动MySQL服务,若成功则如图所示会显示有succeed
service mysqld start

  1. 查看MySQL服务状态
service mysqld status

  1. 连接测试(在MySQL的bin目录下执行),第一次登陆无密码
./mysql -hlocalhost -uroot -p


4.停止MySQL服务

service mysqld stop

更多推荐

国产操作系统银河麒麟V10下安装部署MySQL